{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "**Chapter 14 – Recurrent Neural Networks**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "_This notebook contains all the sample code and solutions to the exercises in chapter 14._"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Setup"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "First, let's make sure this notebook works well in both python 2 and 3, import a few common modules, ensure MatplotLib plots figures inline and prepare a function to save the figures:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "# To support both python 2 and python 3\n",
    "from __future__ import division, print_function, unicode_literals\n",
    "\n",
    "# Common imports\n",
    "import numpy as np\n",
    "import os\n",
    "\n",
    "# to make this notebook's output stable across runs\n",
    "def reset_graph(seed=42):\n",
    "    tf.reset_default_graph()\n",
    "    tf.set_random_seed(seed)\n",
    "    np.random.seed(seed)\n",
    "\n",
    "# To plot pretty figures\n",
    "%matplotlib inline\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams['axes.labelsize'] = 14\n",
    "plt.rcParams['xtick.labelsize'] = 12\n",
    "plt.rcParams['ytick.labelsize'] = 12\n",
    "\n",
    "# Where to save the figures\n",
    "PROJECT_ROOT_DIR = \".\"\n",
    "CHAPTER_ID = \"rnn\"\n",
    "\n",
    "def save_fig(fig_id, tight_layout=True):\n",
    "    path = os.path.join(PROJECT_ROOT_DIR, \"images\", CHAPTER_ID, fig_id + \".png\")\n",
    "    print(\"Saving figure\", fig_id)\n",
    "    if tight_layout:\n",
    "        plt.tight_layout()\n",
    "    plt.savefig(path, format='png', dpi=300)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Then of course we will need TensorFlow:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "import tensorflow as tf"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Basic RNNs"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Manual RNN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_inputs = 3\n",
    "n_neurons = 5\n",
    "\n",
    "X0 = tf.placeholder(tf.float32, [None, n_inputs])\n",
    "X1 = tf.placeholder(tf.float32, [None, n_inputs])\n",
    "\n",
    "Wx = tf.Variable(tf.random_normal(shape=[n_inputs, n_neurons],dtype=tf.float32))\n",
    "Wy = tf.Variable(tf.random_normal(shape=[n_neurons,n_neurons],dtype=tf.float32))\n",
    "b = tf.Variable(tf.zeros([1, n_neurons], dtype=tf.float32))\n",
    "\n",
    "Y0 = tf.tanh(tf.matmul(X0, Wx) + b)\n",
    "Y1 = tf.tanh(tf.matmul(Y0, Wy) + tf.matmul(X1, Wx) + b)\n",
    "\n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "X0_batch = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 0, 1]]) # t = 0\n",
    "X1_batch = np.array([[9, 8, 7], [0, 0, 0], [6, 5, 4], [3, 2, 1]]) # t = 1\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    Y0_val, Y1_val = sess.run([Y0, Y1], feed_dict={X0: X0_batch, X1: X1_batch})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-0.0664006   0.96257669  0.68105787  0.70918542 -0.89821595]\n",
      " [ 0.9977755  -0.71978885 -0.99657625  0.9673925  -0.99989718]\n",
      " [ 0.99999774 -0.99898815 -0.99999893  0.99677622 -0.99999988]\n",
      " [ 1.         -1.         -1.         -0.99818915  0.99950868]]\n"
     ]
    }
   ],
   "source": [
    "print(Y0_val)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 1.         -1.         -1.          0.40200216 -1.        ]\n",
      " [-0.12210433  0.62805319  0.96718419 -0.99371207 -0.25839335]\n",
      " [ 0.99999827 -0.9999994  -0.9999975  -0.85943311 -0.9999879 ]\n",
      " [ 0.99928284 -0.99999815 -0.99990582  0.98579615 -0.92205751]]\n"
     ]
    }
   ],
   "source": [
    "print(Y1_val)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Using `static_rnn()`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_inputs = 3\n",
    "n_neurons = 5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "X0 = tf.placeholder(tf.float32, [None, n_inputs])\n",
    "X1 = tf.placeholder(tf.float32, [None, n_inputs])\n",
    "\n",
    "basic_cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "output_seqs, states = tf.contrib.rnn.static_rnn(basic_cell, [X0, X1],\n",
    "                                                dtype=tf.float32)\n",
    "Y0, Y1 = output_seqs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "X0_batch = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 0, 1]])\n",
    "X1_batch = np.array([[9, 8, 7], [0, 0, 0], [6, 5, 4], [3, 2, 1]])\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    Y0_val, Y1_val = sess.run([Y0, Y1], feed_dict={X0: X0_batch, X1: X1_batch})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[-0.81393629, -0.43182844, -0.40150994,  0.7043609 ,  0.89640522],\n",
       "       [-0.9915663 , -0.95103657,  0.19996507,  0.98335052,  0.99998963],\n",
       "       [-0.99965042, -0.99683058,  0.68092704,  0.99918783,  1.        ],\n",
       "       [ 0.64988363, -0.16740513,  0.99994725,  0.81680971,  0.99995029]], dtype=float32)"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Y0_val"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[-0.99959785, -0.99861717,  0.98714638,  0.99745673,  1.        ],\n",
       "       [-0.72472596,  0.17925572,  0.53362155, -0.65215266, -0.08035918],\n",
       "       [-0.9957462 , -0.96851194,  0.9874723 ,  0.84106421,  0.99999976],\n",
       "       [-0.72859728, -0.27958852,  0.80567408, -0.20587993,  0.9995411 ]], dtype=float32)"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Y1_val"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "from IPython.display import clear_output, Image, display, HTML\n",
    "\n",
    "def strip_consts(graph_def, max_const_size=32):\n",
    "    \"\"\"Strip large constant values from graph_def.\"\"\"\n",
    "    strip_def = tf.GraphDef()\n",
    "    for n0 in graph_def.node:\n",
    "        n = strip_def.node.add() \n",
    "        n.MergeFrom(n0)\n",
    "        if n.op == 'Const':\n",
    "            tensor = n.attr['value'].tensor\n",
    "            size = len(tensor.tensor_content)\n",
    "            if size > max_const_size:\n",
    "                tensor.tensor_content = \"b<stripped %d bytes>\"%size\n",
    "    return strip_def\n",
    "\n",
    "def show_graph(graph_def, max_const_size=32):\n",
    "    \"\"\"Visualize TensorFlow graph.\"\"\"\n",
    "    if hasattr(graph_def, 'as_graph_def'):\n",
    "        graph_def = graph_def.as_graph_def()\n",
    "    strip_def = strip_consts(graph_def, max_const_size=max_const_size)\n",
    "    code = \"\"\"\n",
    "        <script>\n",
    "          function load() {{\n",
    "            document.getElementById(\"{id}\").pbtxt = {data};\n",
    "          }}\n",
    "        </script>\n",
    "        <link rel=\"import\" href=\"https://tensorboard.appspot.com/tf-graph-basic.build.html\" onload=load()>\n",
    "        <div style=\"height:600px\">\n",
    "          <tf-graph-basic id=\"{id}\"></tf-graph-basic>\n",
    "        </div>\n",
    "    \"\"\".format(data=repr(str(strip_def)), id='graph'+str(np.random.rand()))\n",
    "\n",
    "    iframe = \"\"\"\n",
    "        <iframe seamless style=\"width:1200px;height:620px;border:0\" srcdoc=\"{}\"></iframe>\n",
    "    \"\"\".format(code.replace('\"', '&quot;'))\n",
    "    display(HTML(iframe))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "        <iframe seamless style=\"width:1200px;height:620px;border:0\" srcdoc=\"\n",
       "        <script>\n",
       "          function load() {\n",
       "            document.getElementById(&quot;graph0.3745401188473625&quot;).pbtxt = 'node {\\n  name: &quot;Placeholder&quot;\\n  op: &quot;Placeholder&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;Placeholder_1&quot;\\n  op: &quot;Placeholder&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/Shape&quot;\\n  op: &quot;Shape&quot;\\n  input: &quot;Placeholder&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;out_type&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice/stack&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice/stack_1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice/stack_2&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice&quot;\\n  op: &quot;StridedSlice&quot;\\n  input: &quot;rnn/Shape&quot;\\n  input: &quot;rnn/strided_slice/stack&quot;\\n  input: &quot;rnn/strided_slice/stack_1&quot;\\n  input: &quot;rnn/strided_slice/stack_2&quot;\\n  attr {\\n    key: &quot;Index&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;begin_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;ellipsis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;end_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;new_axis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;shrink_axis_mask&quot;\\n    value {\\n      i: 1\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/stack/1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 5\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/stack&quot;\\n  op: &quot;Pack&quot;\\n  input: &quot;rnn/strided_slice&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/stack/1&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;axis&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/zeros/Const&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: 0.0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/zeros&quot;\\n  op: &quot;Fill&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/stack&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/zeros/Const&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/shape&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 2\\n          }\\n        }\\n        tensor_content: &quot;\\\\010\\\\000\\\\000\\\\000\\\\005\\\\000\\\\000\\\\000&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/min&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: -0.6793662309646606\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/max&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: 0.6793662309646606\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/RandomUniform&quot;\\n  op: &quot;RandomUniform&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/shape&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;seed&quot;\\n    value {\\n      i: 42\\n    }\\n  }\\n  attr {\\n    key: &quot;seed2&quot;\\n    value {\\n      i: 14\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/sub&quot;\\n  op: &quot;Sub&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/max&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/min&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/mul&quot;\\n  op: &quot;Mul&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/RandomUniform&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/sub&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform&quot;\\n  op: &quot;Add&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/mul&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/min&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights&quot;\\n  op: &quot;VariableV2&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;container&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n        dim {\\n          size: 8\\n        }\\n        dim {\\n          size: 5\\n        }\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;shared_name&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Assign&quot;\\n  op: &quot;Assign&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;use_locking&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;validate_shape&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/read&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/concat/axis&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/concat&quot;\\n  op: &quot;ConcatV2&quot;\\n  input: &quot;Placeholder&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/zeros&quot;\\n  input: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/concat/axis&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;Tidx&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/MatMul&quot;\\n  op: &quot;MatMul&quot;\\n  input: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/concat&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/read&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;transpose_a&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;transpose_b&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases/Initializer/Const&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/biases&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n          dim {\\n            size: 5\\n          }\\n        }\\n        float_val: 0.0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases&quot;\\n  op: &quot;VariableV2&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/biases&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;container&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n        dim {\\n          size: 5\\n        }\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;shared_name&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases/Assign&quot;\\n  op: &quot;Assign&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases/Initializer/Const&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/biases&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;use_locking&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;validate_shape&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases/read&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/BiasAdd&quot;\\n  op: &quot;BiasAdd&quot;\\n  input: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/MatMul&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases/read&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;data_format&quot;\\n    value {\\n      s: &quot;NHWC&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/Tanh&quot;\\n  op: &quot;Tanh&quot;\\n  input: &quot;rnn/basic_rnn_cell/basic_rnn_cell_1/BiasAdd&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/concat/axis&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/concat&quot;\\n  op: &quot;ConcatV2&quot;\\n  input: &quot;Placeholder_1&quot;\\n  input: &quot;rnn/basic_rnn_cell/Tanh&quot;\\n  input: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/concat/axis&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;Tidx&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/MatMul&quot;\\n  op: &quot;MatMul&quot;\\n  input: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/concat&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/read&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;transpose_a&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;transpose_b&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/BiasAdd&quot;\\n  op: &quot;BiasAdd&quot;\\n  input: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/MatMul&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases/read&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;data_format&quot;\\n    value {\\n      s: &quot;NHWC&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell_1/Tanh&quot;\\n  op: &quot;Tanh&quot;\\n  input: &quot;rnn/basic_rnn_cell_1/basic_rnn_cell/BiasAdd&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;init&quot;\\n  op: &quot;NoOp&quot;\\n  input: &quot;^rnn/basic_rnn_cell/weights/Assign&quot;\\n  input: &quot;^rnn/basic_rnn_cell/biases/Assign&quot;\\n}\\n';\n",
       "          }\n",
       "        </script>\n",
       "        <link rel=&quot;import&quot; href=&quot;https://tensorboard.appspot.com/tf-graph-basic.build.html&quot; onload=load()>\n",
       "        <div style=&quot;height:600px&quot;>\n",
       "          <tf-graph-basic id=&quot;graph0.3745401188473625&quot;></tf-graph-basic>\n",
       "        </div>\n",
       "    \"></iframe>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "show_graph(tf.get_default_graph())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Packing sequences"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_steps = 2\n",
    "n_inputs = 3\n",
    "n_neurons = 5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "X_seqs = tf.unstack(tf.transpose(X, perm=[1, 0, 2]))\n",
    "\n",
    "basic_cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "output_seqs, states = tf.contrib.rnn.static_rnn(basic_cell, X_seqs,\n",
    "                                                dtype=tf.float32)\n",
    "outputs = tf.transpose(tf.stack(output_seqs), perm=[1, 0, 2])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "X_batch = np.array([\n",
    "        # t = 0      t = 1 \n",
    "        [[0, 1, 2], [9, 8, 7]], # instance 1\n",
    "        [[3, 4, 5], [0, 0, 0]], # instance 2\n",
    "        [[6, 7, 8], [6, 5, 4]], # instance 3\n",
    "        [[9, 0, 1], [3, 2, 1]], # instance 4\n",
    "    ])\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    outputs_val = outputs.eval(feed_dict={X: X_batch})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[[-0.91279727  0.83698678 -0.89277941  0.80308062 -0.5283336 ]\n",
      "  [-1.          1.         -0.99794829  0.99985468 -0.99273592]]\n",
      "\n",
      " [[-0.99994391  0.99951613 -0.9946925   0.99030769 -0.94413054]\n",
      "  [ 0.48733309  0.93389565 -0.31362072  0.88573611  0.2424476 ]]\n",
      "\n",
      " [[-1.          0.99999875 -0.99975014  0.99956584 -0.99466234]\n",
      "  [-0.99994856  0.99999434 -0.96058172  0.99784708 -0.9099462 ]]\n",
      "\n",
      " [[-0.95972425  0.99951482  0.96938795 -0.969908   -0.67668229]\n",
      "  [-0.84596014  0.96288228  0.96856463 -0.14777924 -0.9119423 ]]]\n"
     ]
    }
   ],
   "source": [
    "print(outputs_val)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-1.          1.         -0.99794829  0.99985468 -0.99273592]\n",
      " [ 0.48733309  0.93389565 -0.31362072  0.88573611  0.2424476 ]\n",
      " [-0.99994856  0.99999434 -0.96058172  0.99784708 -0.9099462 ]\n",
      " [-0.84596014  0.96288228  0.96856463 -0.14777924 -0.9119423 ]]\n"
     ]
    }
   ],
   "source": [
    "print(np.transpose(outputs_val, axes=[1, 0, 2])[1])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Using `dynamic_rnn()`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_steps = 2\n",
    "n_inputs = 3\n",
    "n_neurons = 5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "\n",
    "basic_cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "outputs, states = tf.nn.dynamic_rnn(basic_cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "X_batch = np.array([\n",
    "        [[0, 1, 2], [9, 8, 7]], # instance 1\n",
    "        [[3, 4, 5], [0, 0, 0]], # instance 2\n",
    "        [[6, 7, 8], [6, 5, 4]], # instance 3\n",
    "        [[9, 0, 1], [3, 2, 1]], # instance 4\n",
    "    ])\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    outputs_val = outputs.eval(feed_dict={X: X_batch})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[[ 0.90414059  0.49652389 -0.86023885  0.39286929 -0.30018684]\n",
      "  [ 0.99999994  0.76327085 -1.          0.99888641 -0.7229408 ]]\n",
      "\n",
      " [[ 0.99988353  0.77785885 -0.99992859  0.9727248  -0.78886396]\n",
      "  [ 0.44762579 -0.06916652 -0.51665425 -0.84579295  0.88807124]]\n",
      "\n",
      " [[ 0.99999976  0.91130525 -0.99999994  0.99912328 -0.94954252]\n",
      "  [ 0.9999842   0.20443429 -0.99999785  0.94190502  0.3501083 ]]\n",
      "\n",
      " [[ 0.99490303  0.88642204 -0.99999577  0.99939179  0.97382319]\n",
      "  [ 0.95951742  0.73643577 -0.99815822 -0.26513484  0.06432986]]]\n"
     ]
    }
   ],
   "source": [
    "print(outputs_val)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "        <iframe seamless style=\"width:1200px;height:620px;border:0\" srcdoc=\"\n",
       "        <script>\n",
       "          function load() {\n",
       "            document.getElementById(&quot;graph0.3745401188473625&quot;).pbtxt = 'node {\\n  name: &quot;Placeholder&quot;\\n  op: &quot;Placeholder&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;transpose/perm&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 3\\n          }\\n        }\\n        tensor_content: &quot;\\\\001\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\002\\\\000\\\\000\\\\000&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;transpose&quot;\\n  op: &quot;Transpose&quot;\\n  input: &quot;Placeholder&quot;\\n  input: &quot;transpose/perm&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;Tperm&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/Shape&quot;\\n  op: &quot;Shape&quot;\\n  input: &quot;transpose&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;out_type&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice/stack&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice/stack_1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 2\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice/stack_2&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice&quot;\\n  op: &quot;StridedSlice&quot;\\n  input: &quot;rnn/Shape&quot;\\n  input: &quot;rnn/strided_slice/stack&quot;\\n  input: &quot;rnn/strided_slice/stack_1&quot;\\n  input: &quot;rnn/strided_slice/stack_2&quot;\\n  attr {\\n    key: &quot;Index&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;begin_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;ellipsis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;end_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;new_axis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;shrink_axis_mask&quot;\\n    value {\\n      i: 1\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_1/stack&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_1/stack_1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 2\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_1/stack_2&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_1&quot;\\n  op: &quot;StridedSlice&quot;\\n  input: &quot;rnn/Shape&quot;\\n  input: &quot;rnn/strided_slice_1/stack&quot;\\n  input: &quot;rnn/strided_slice_1/stack_1&quot;\\n  input: &quot;rnn/strided_slice_1/stack_2&quot;\\n  attr {\\n    key: &quot;Index&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;begin_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;ellipsis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;end_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;new_axis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;shrink_axis_mask&quot;\\n    value {\\n      i: 1\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/stack/1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 5\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/stack&quot;\\n  op: &quot;Pack&quot;\\n  input: &quot;rnn/strided_slice&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/stack/1&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;axis&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/zeros/Const&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: 0.0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/BasicRNNCellZeroState/zeros&quot;\\n  op: &quot;Fill&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/stack&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/zeros/Const&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/Shape_1&quot;\\n  op: &quot;Shape&quot;\\n  input: &quot;transpose&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;out_type&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_2/stack&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_2/stack_1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_2/stack_2&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_2&quot;\\n  op: &quot;StridedSlice&quot;\\n  input: &quot;rnn/Shape_1&quot;\\n  input: &quot;rnn/strided_slice_2/stack&quot;\\n  input: &quot;rnn/strided_slice_2/stack_1&quot;\\n  input: &quot;rnn/strided_slice_2/stack_2&quot;\\n  attr {\\n    key: &quot;Index&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;begin_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;ellipsis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;end_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;new_axis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;shrink_axis_mask&quot;\\n    value {\\n      i: 1\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_3/stack&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_3/stack_1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 2\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_3/stack_2&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/strided_slice_3&quot;\\n  op: &quot;StridedSlice&quot;\\n  input: &quot;rnn/Shape_1&quot;\\n  input: &quot;rnn/strided_slice_3/stack&quot;\\n  input: &quot;rnn/strided_slice_3/stack_1&quot;\\n  input: &quot;rnn/strided_slice_3/stack_2&quot;\\n  attr {\\n    key: &quot;Index&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;begin_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;ellipsis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;end_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;new_axis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;shrink_axis_mask&quot;\\n    value {\\n      i: 1\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/stack/1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 5\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/stack&quot;\\n  op: &quot;Pack&quot;\\n  input: &quot;rnn/strided_slice_3&quot;\\n  input: &quot;rnn/stack/1&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;axis&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/zeros/Const&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: 0.0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/zeros&quot;\\n  op: &quot;Fill&quot;\\n  input: &quot;rnn/stack&quot;\\n  input: &quot;rnn/zeros/Const&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/time&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArray&quot;\\n  op: &quot;TensorArrayV3&quot;\\n  input: &quot;rnn/strided_slice_2&quot;\\n  attr {\\n    key: &quot;clear_after_read&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;dynamic_size&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;element_shape&quot;\\n    value {\\n      shape {\\n        unknown_rank: true\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;tensor_array_name&quot;\\n    value {\\n      s: &quot;rnn/dynamic_rnn/output_0&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArray_1&quot;\\n  op: &quot;TensorArrayV3&quot;\\n  input: &quot;rnn/strided_slice_2&quot;\\n  attr {\\n    key: &quot;clear_after_read&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;dynamic_size&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;element_shape&quot;\\n    value {\\n      shape {\\n        unknown_rank: true\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;tensor_array_name&quot;\\n    value {\\n      s: &quot;rnn/dynamic_rnn/input_0&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/Shape&quot;\\n  op: &quot;Shape&quot;\\n  input: &quot;transpose&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;out_type&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/strided_slice/stack&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/strided_slice/stack_1&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/strided_slice/stack_2&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 1\\n          }\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/strided_slice&quot;\\n  op: &quot;StridedSlice&quot;\\n  input: &quot;rnn/TensorArrayUnstack/Shape&quot;\\n  input: &quot;rnn/TensorArrayUnstack/strided_slice/stack&quot;\\n  input: &quot;rnn/TensorArrayUnstack/strided_slice/stack_1&quot;\\n  input: &quot;rnn/TensorArrayUnstack/strided_slice/stack_2&quot;\\n  attr {\\n    key: &quot;Index&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;begin_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;ellipsis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;end_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;new_axis_mask&quot;\\n    value {\\n      i: 0\\n    }\\n  }\\n  attr {\\n    key: &quot;shrink_axis_mask&quot;\\n    value {\\n      i: 1\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/range/start&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/range/delta&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/range&quot;\\n  op: &quot;Range&quot;\\n  input: &quot;rnn/TensorArrayUnstack/range/start&quot;\\n  input: &quot;rnn/TensorArrayUnstack/strided_slice&quot;\\n  input: &quot;rnn/TensorArrayUnstack/range/delta&quot;\\n  attr {\\n    key: &quot;Tidx&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3&quot;\\n  op: &quot;TensorArrayScatterV3&quot;\\n  input: &quot;rnn/TensorArray_1&quot;\\n  input: &quot;rnn/TensorArrayUnstack/range&quot;\\n  input: &quot;transpose&quot;\\n  input: &quot;rnn/TensorArray_1:1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray_1&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Enter&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/time&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Enter_1&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/TensorArray:1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Enter_2&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/BasicRNNCellZeroState/zeros&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Merge&quot;\\n  op: &quot;Merge&quot;\\n  input: &quot;rnn/while/Enter&quot;\\n  input: &quot;rnn/while/NextIteration&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Merge_1&quot;\\n  op: &quot;Merge&quot;\\n  input: &quot;rnn/while/Enter_1&quot;\\n  input: &quot;rnn/while/NextIteration_1&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Merge_2&quot;\\n  op: &quot;Merge&quot;\\n  input: &quot;rnn/while/Enter_2&quot;\\n  input: &quot;rnn/while/NextIteration_2&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Less/Enter&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/strided_slice_2&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Less&quot;\\n  op: &quot;Less&quot;\\n  input: &quot;rnn/while/Merge&quot;\\n  input: &quot;rnn/while/Less/Enter&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/LoopCond&quot;\\n  op: &quot;LoopCond&quot;\\n  input: &quot;rnn/while/Less&quot;\\n}\\nnode {\\n  name: &quot;rnn/while/Switch&quot;\\n  op: &quot;Switch&quot;\\n  input: &quot;rnn/while/Merge&quot;\\n  input: &quot;rnn/while/LoopCond&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/while/Merge&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Switch_1&quot;\\n  op: &quot;Switch&quot;\\n  input: &quot;rnn/while/Merge_1&quot;\\n  input: &quot;rnn/while/LoopCond&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/while/Merge_1&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Switch_2&quot;\\n  op: &quot;Switch&quot;\\n  input: &quot;rnn/while/Merge_2&quot;\\n  input: &quot;rnn/while/LoopCond&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/while/Merge_2&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Identity&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/while/Switch:1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Identity_1&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/while/Switch_1:1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Identity_2&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/while/Switch_2:1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/TensorArrayReadV3/Enter&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/TensorArray_1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_RESOURCE\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray_1&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/TensorArrayReadV3/Enter_1&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/TensorArrayUnstack/TensorArrayScatter/TensorArrayScatterV3&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray_1&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/TensorArrayReadV3&quot;\\n  op: &quot;TensorArrayReadV3&quot;\\n  input: &quot;rnn/while/TensorArrayReadV3/Enter&quot;\\n  input: &quot;rnn/while/Identity&quot;\\n  input: &quot;rnn/while/TensorArrayReadV3/Enter_1&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray_1&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/shape&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 2\\n          }\\n        }\\n        tensor_content: &quot;\\\\010\\\\000\\\\000\\\\000\\\\005\\\\000\\\\000\\\\000&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/min&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: -0.6793662309646606\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/max&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n        }\\n        float_val: 0.6793662309646606\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/RandomUniform&quot;\\n  op: &quot;RandomUniform&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/shape&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;seed&quot;\\n    value {\\n      i: 42\\n    }\\n  }\\n  attr {\\n    key: &quot;seed2&quot;\\n    value {\\n      i: 62\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/sub&quot;\\n  op: &quot;Sub&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/max&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/min&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/mul&quot;\\n  op: &quot;Mul&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/RandomUniform&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/sub&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform&quot;\\n  op: &quot;Add&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/mul&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform/min&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights&quot;\\n  op: &quot;VariableV2&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;container&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n        dim {\\n          size: 8\\n        }\\n        dim {\\n          size: 5\\n        }\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;shared_name&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/Assign&quot;\\n  op: &quot;Assign&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/Initializer/random_uniform&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/weights&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;use_locking&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;validate_shape&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/weights/read&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/concat/axis&quot;\\n  op: &quot;Const&quot;\\n  input: &quot;^rnn/while/Identity&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/concat&quot;\\n  op: &quot;ConcatV2&quot;\\n  input: &quot;rnn/while/TensorArrayReadV3&quot;\\n  input: &quot;rnn/while/Identity_2&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/concat/axis&quot;\\n  attr {\\n    key: &quot;N&quot;\\n    value {\\n      i: 2\\n    }\\n  }\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;Tidx&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/MatMul/Enter&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/basic_rnn_cell/weights/read&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/MatMul&quot;\\n  op: &quot;MatMul&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/concat&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/MatMul/Enter&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;transpose_a&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n  attr {\\n    key: &quot;transpose_b&quot;\\n    value {\\n      b: false\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases/Initializer/Const&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/biases&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_FLOAT\\n        tensor_shape {\\n          dim {\\n            size: 5\\n          }\\n        }\\n        float_val: 0.0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases&quot;\\n  op: &quot;VariableV2&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/biases&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;container&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;shape&quot;\\n    value {\\n      shape {\\n        dim {\\n          size: 5\\n        }\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;shared_name&quot;\\n    value {\\n      s: &quot;&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases/Assign&quot;\\n  op: &quot;Assign&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases/Initializer/Const&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/basic_rnn_cell/biases&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;use_locking&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;validate_shape&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/basic_rnn_cell/biases/read&quot;\\n  op: &quot;Identity&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/BiasAdd/Enter&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/basic_rnn_cell/biases/read&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/BiasAdd&quot;\\n  op: &quot;BiasAdd&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/MatMul&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/BiasAdd/Enter&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;data_format&quot;\\n    value {\\n      s: &quot;NHWC&quot;\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/basic_rnn_cell/Tanh&quot;\\n  op: &quot;Tanh&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/basic_rnn_cell_1/BiasAdd&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/TensorArrayWrite/TensorArrayWriteV3/Enter&quot;\\n  op: &quot;Enter&quot;\\n  input: &quot;rnn/TensorArray&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_RESOURCE\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;frame_name&quot;\\n    value {\\n      s: &quot;rnn/while/rnn/while/&quot;\\n    }\\n  }\\n  attr {\\n    key: &quot;is_constant&quot;\\n    value {\\n      b: true\\n    }\\n  }\\n  attr {\\n    key: &quot;parallel_iterations&quot;\\n    value {\\n      i: 32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/TensorArrayWrite/TensorArrayWriteV3&quot;\\n  op: &quot;TensorArrayWriteV3&quot;\\n  input: &quot;rnn/while/TensorArrayWrite/TensorArrayWriteV3/Enter&quot;\\n  input: &quot;rnn/while/Identity&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/Tanh&quot;\\n  input: &quot;rnn/while/Identity_1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/add/y&quot;\\n  op: &quot;Const&quot;\\n  input: &quot;^rnn/while/Identity&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/add&quot;\\n  op: &quot;Add&quot;\\n  input: &quot;rnn/while/Identity&quot;\\n  input: &quot;rnn/while/add/y&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/NextIteration&quot;\\n  op: &quot;NextIteration&quot;\\n  input: &quot;rnn/while/add&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/NextIteration_1&quot;\\n  op: &quot;NextIteration&quot;\\n  input: &quot;rnn/while/TensorArrayWrite/TensorArrayWriteV3&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/NextIteration_2&quot;\\n  op: &quot;NextIteration&quot;\\n  input: &quot;rnn/while/basic_rnn_cell/Tanh&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Exit&quot;\\n  op: &quot;Exit&quot;\\n  input: &quot;rnn/while/Switch&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Exit_1&quot;\\n  op: &quot;Exit&quot;\\n  input: &quot;rnn/while/Switch_1&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/while/Exit_2&quot;\\n  op: &quot;Exit&quot;\\n  input: &quot;rnn/while/Switch_2&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayStack/TensorArraySizeV3&quot;\\n  op: &quot;TensorArraySizeV3&quot;\\n  input: &quot;rnn/TensorArray&quot;\\n  input: &quot;rnn/while/Exit_1&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayStack/range/start&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 0\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayStack/range/delta&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n        }\\n        int_val: 1\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayStack/range&quot;\\n  op: &quot;Range&quot;\\n  input: &quot;rnn/TensorArrayStack/range/start&quot;\\n  input: &quot;rnn/TensorArrayStack/TensorArraySizeV3&quot;\\n  input: &quot;rnn/TensorArrayStack/range/delta&quot;\\n  attr {\\n    key: &quot;Tidx&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/TensorArrayStack/TensorArrayGatherV3&quot;\\n  op: &quot;TensorArrayGatherV3&quot;\\n  input: &quot;rnn/TensorArray&quot;\\n  input: &quot;rnn/TensorArrayStack/range&quot;\\n  input: &quot;rnn/while/Exit_1&quot;\\n  attr {\\n    key: &quot;_class&quot;\\n    value {\\n      list {\\n        s: &quot;loc:@rnn/TensorArray&quot;\\n      }\\n    }\\n  }\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;element_shape&quot;\\n    value {\\n      shape {\\n        dim {\\n          size: -1\\n        }\\n        dim {\\n          size: 5\\n        }\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/transpose/perm&quot;\\n  op: &quot;Const&quot;\\n  attr {\\n    key: &quot;dtype&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n  attr {\\n    key: &quot;value&quot;\\n    value {\\n      tensor {\\n        dtype: DT_INT32\\n        tensor_shape {\\n          dim {\\n            size: 3\\n          }\\n        }\\n        tensor_content: &quot;\\\\001\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\000\\\\002\\\\000\\\\000\\\\000&quot;\\n      }\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;rnn/transpose&quot;\\n  op: &quot;Transpose&quot;\\n  input: &quot;rnn/TensorArrayStack/TensorArrayGatherV3&quot;\\n  input: &quot;rnn/transpose/perm&quot;\\n  attr {\\n    key: &quot;T&quot;\\n    value {\\n      type: DT_FLOAT\\n    }\\n  }\\n  attr {\\n    key: &quot;Tperm&quot;\\n    value {\\n      type: DT_INT32\\n    }\\n  }\\n}\\nnode {\\n  name: &quot;init&quot;\\n  op: &quot;NoOp&quot;\\n  input: &quot;^rnn/basic_rnn_cell/weights/Assign&quot;\\n  input: &quot;^rnn/basic_rnn_cell/biases/Assign&quot;\\n}\\n';\n",
       "          }\n",
       "        </script>\n",
       "        <link rel=&quot;import&quot; href=&quot;https://tensorboard.appspot.com/tf-graph-basic.build.html&quot; onload=load()>\n",
       "        <div style=&quot;height:600px&quot;>\n",
       "          <tf-graph-basic id=&quot;graph0.3745401188473625&quot;></tf-graph-basic>\n",
       "        </div>\n",
       "    \"></iframe>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "show_graph(tf.get_default_graph())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Setting the sequence lengths"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_steps = 2\n",
    "n_inputs = 3\n",
    "n_neurons = 5\n",
    "\n",
    "reset_graph()\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "basic_cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "seq_length = tf.placeholder(tf.int32, [None])\n",
    "outputs, states = tf.nn.dynamic_rnn(basic_cell, X, dtype=tf.float32,\n",
    "                                    sequence_length=seq_length)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "X_batch = np.array([\n",
    "        # step 0     step 1\n",
    "        [[0, 1, 2], [9, 8, 7]], # instance 1\n",
    "        [[3, 4, 5], [0, 0, 0]], # instance 2 (padded with zero vectors)\n",
    "        [[6, 7, 8], [6, 5, 4]], # instance 3\n",
    "        [[9, 0, 1], [3, 2, 1]], # instance 4\n",
    "    ])\n",
    "seq_length_batch = np.array([2, 1, 2, 2])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    outputs_val, states_val = sess.run(\n",
    "        [outputs, states], feed_dict={X: X_batch, seq_length: seq_length_batch})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[[-0.68579948 -0.25901747 -0.80249101 -0.18141513 -0.37491536]\n",
      "  [-0.99996698 -0.94501185  0.98072106 -0.9689762   0.99966913]]\n",
      "\n",
      " [[-0.99099374 -0.64768541 -0.67801034 -0.7415446   0.7719509 ]\n",
      "  [ 0.          0.          0.          0.          0.        ]]\n",
      "\n",
      " [[-0.99978048 -0.85583007 -0.49696958 -0.93838578  0.98505187]\n",
      "  [-0.99951065 -0.89148796  0.94170523 -0.38407657  0.97499216]]\n",
      "\n",
      " [[-0.02052618 -0.94588047  0.99935204  0.37283331  0.9998163 ]\n",
      "  [-0.91052347  0.05769409  0.47446665 -0.44611037  0.89394671]]]\n"
     ]
    }
   ],
   "source": [
    "print(outputs_val)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-0.99996698 -0.94501185  0.98072106 -0.9689762   0.99966913]\n",
      " [-0.99099374 -0.64768541 -0.67801034 -0.7415446   0.7719509 ]\n",
      " [-0.99951065 -0.89148796  0.94170523 -0.38407657  0.97499216]\n",
      " [-0.91052347  0.05769409  0.47446665 -0.44611037  0.89394671]]\n"
     ]
    }
   ],
   "source": [
    "print(states_val)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Training a sequence classifier"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Note: the book uses `tensorflow.contrib.layers.fully_connected()` rather than `tf.layers.dense()` (which did not exist when this chapter was written). It is now preferable to use `tf.layers.dense()`, because anything in the contrib module may change or be deleted without notice. The `dense()` function is almost identical to the `fully_connected()` function. The main differences relevant to this chapter are:\n",
    "* several parameters are renamed: `scope` becomes `name`, `activation_fn` becomes `activation` (and similarly the `_fn` suffix is removed from other parameters such as `normalizer_fn`), `weights_initializer` becomes `kernel_initializer`, etc.\n",
    "* the default `activation` is now `None` rather than `tf.nn.relu`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_steps = 28\n",
    "n_inputs = 28\n",
    "n_neurons = 150\n",
    "n_outputs = 10\n",
    "\n",
    "learning_rate = 0.001\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.int32, [None])\n",
    "\n",
    "basic_cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "outputs, states = tf.nn.dynamic_rnn(basic_cell, X, dtype=tf.float32)\n",
    "\n",
    "logits = tf.layers.dense(states, n_outputs)\n",
    "xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y,\n",
    "                                                          logits=logits)\n",
    "loss = tf.reduce_mean(xentropy)\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "correct = tf.nn.in_top_k(logits, y, 1)\n",
    "accuracy = tf.reduce_mean(tf.cast(correct, tf.float32))\n",
    "\n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Extracting /tmp/data/train-images-idx3-ubyte.gz\n",
      "Extracting /tmp/data/train-labels-idx1-ubyte.gz\n",
      "Extracting /tmp/data/t10k-images-idx3-ubyte.gz\n",
      "Extracting /tmp/data/t10k-labels-idx1-ubyte.gz\n"
     ]
    }
   ],
   "source": [
    "from tensorflow.examples.tutorials.mnist import input_data\n",
    "mnist = input_data.read_data_sets(\"/tmp/data/\")\n",
    "X_test = mnist.test.images.reshape((-1, n_steps, n_inputs))\n",
    "y_test = mnist.test.labels"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 Train accuracy: 0.94 Test accuracy: 0.9308\n",
      "1 Train accuracy: 0.933333 Test accuracy: 0.9431\n",
      "2 Train accuracy: 0.94 Test accuracy: 0.9531\n",
      "3 Train accuracy: 0.96 Test accuracy: 0.9616\n",
      "4 Train accuracy: 0.96 Test accuracy: 0.9641\n",
      "5 Train accuracy: 0.966667 Test accuracy: 0.968\n",
      "6 Train accuracy: 0.98 Test accuracy: 0.9616\n",
      "7 Train accuracy: 0.98 Test accuracy: 0.9678\n",
      "8 Train accuracy: 0.98 Test accuracy: 0.9691\n",
      "9 Train accuracy: 0.973333 Test accuracy: 0.9734\n",
      "10 Train accuracy: 0.993333 Test accuracy: 0.9732\n",
      "11 Train accuracy: 0.966667 Test accuracy: 0.9747\n",
      "12 Train accuracy: 0.986667 Test accuracy: 0.9747\n",
      "13 Train accuracy: 0.98 Test accuracy: 0.9697\n",
      "14 Train accuracy: 0.973333 Test accuracy: 0.9756\n",
      "15 Train accuracy: 0.993333 Test accuracy: 0.9773\n",
      "16 Train accuracy: 0.993333 Test accuracy: 0.9738\n",
      "17 Train accuracy: 0.986667 Test accuracy: 0.9727\n",
      "18 Train accuracy: 0.986667 Test accuracy: 0.9797\n",
      "19 Train accuracy: 0.986667 Test accuracy: 0.9748\n",
      "20 Train accuracy: 0.98 Test accuracy: 0.9723\n",
      "21 Train accuracy: 0.986667 Test accuracy: 0.9779\n",
      "22 Train accuracy: 0.98 Test accuracy: 0.9764\n",
      "23 Train accuracy: 0.98 Test accuracy: 0.9732\n",
      "24 Train accuracy: 0.993333 Test accuracy: 0.9784\n",
      "25 Train accuracy: 0.993333 Test accuracy: 0.9785\n",
      "26 Train accuracy: 0.986667 Test accuracy: 0.9801\n",
      "27 Train accuracy: 0.98 Test accuracy: 0.9661\n",
      "28 Train accuracy: 0.973333 Test accuracy: 0.9819\n",
      "29 Train accuracy: 1.0 Test accuracy: 0.9772\n",
      "30 Train accuracy: 0.986667 Test accuracy: 0.9784\n",
      "31 Train accuracy: 0.993333 Test accuracy: 0.9752\n",
      "32 Train accuracy: 0.98 Test accuracy: 0.972\n",
      "33 Train accuracy: 1.0 Test accuracy: 0.9809\n",
      "34 Train accuracy: 0.993333 Test accuracy: 0.9775\n",
      "35 Train accuracy: 0.973333 Test accuracy: 0.9736\n",
      "36 Train accuracy: 0.993333 Test accuracy: 0.977\n",
      "37 Train accuracy: 1.0 Test accuracy: 0.9817\n",
      "38 Train accuracy: 0.993333 Test accuracy: 0.9723\n",
      "39 Train accuracy: 0.993333 Test accuracy: 0.9769\n",
      "40 Train accuracy: 0.993333 Test accuracy: 0.9791\n",
      "41 Train accuracy: 0.993333 Test accuracy: 0.9787\n",
      "42 Train accuracy: 0.986667 Test accuracy: 0.9821\n",
      "43 Train accuracy: 0.993333 Test accuracy: 0.9777\n",
      "44 Train accuracy: 0.986667 Test accuracy: 0.975\n",
      "45 Train accuracy: 0.986667 Test accuracy: 0.98\n",
      "46 Train accuracy: 0.986667 Test accuracy: 0.9786\n",
      "47 Train accuracy: 0.993333 Test accuracy: 0.9809\n",
      "48 Train accuracy: 0.973333 Test accuracy: 0.9787\n",
      "49 Train accuracy: 0.986667 Test accuracy: 0.9815\n",
      "50 Train accuracy: 1.0 Test accuracy: 0.9774\n",
      "51 Train accuracy: 0.98 Test accuracy: 0.9713\n",
      "52 Train accuracy: 1.0 Test accuracy: 0.9803\n",
      "53 Train accuracy: 0.993333 Test accuracy: 0.9789\n",
      "54 Train accuracy: 1.0 Test accuracy: 0.9805\n",
      "55 Train accuracy: 1.0 Test accuracy: 0.9786\n",
      "56 Train accuracy: 0.986667 Test accuracy: 0.9758\n",
      "57 Train accuracy: 0.993333 Test accuracy: 0.9788\n",
      "58 Train accuracy: 0.98 Test accuracy: 0.9811\n",
      "59 Train accuracy: 0.986667 Test accuracy: 0.9765\n",
      "60 Train accuracy: 1.0 Test accuracy: 0.979\n",
      "61 Train accuracy: 0.993333 Test accuracy: 0.976\n",
      "62 Train accuracy: 0.993333 Test accuracy: 0.9787\n",
      "63 Train accuracy: 0.98 Test accuracy: 0.977\n",
      "64 Train accuracy: 0.993333 Test accuracy: 0.9822\n",
      "65 Train accuracy: 0.993333 Test accuracy: 0.9719\n",
      "66 Train accuracy: 1.0 Test accuracy: 0.9782\n",
      "67 Train accuracy: 0.986667 Test accuracy: 0.9788\n",
      "68 Train accuracy: 0.993333 Test accuracy: 0.9807\n",
      "69 Train accuracy: 1.0 Test accuracy: 0.978\n",
      "70 Train accuracy: 0.973333 Test accuracy: 0.9806\n",
      "71 Train accuracy: 1.0 Test accuracy: 0.9786\n",
      "72 Train accuracy: 0.993333 Test accuracy: 0.9782\n",
      "73 Train accuracy: 0.986667 Test accuracy: 0.976\n",
      "74 Train accuracy: 1.0 Test accuracy: 0.9784\n",
      "75 Train accuracy: 0.993333 Test accuracy: 0.9758\n",
      "76 Train accuracy: 0.986667 Test accuracy: 0.9779\n",
      "77 Train accuracy: 1.0 Test accuracy: 0.9741\n",
      "78 Train accuracy: 0.986667 Test accuracy: 0.9737\n",
      "79 Train accuracy: 0.986667 Test accuracy: 0.9754\n",
      "80 Train accuracy: 0.986667 Test accuracy: 0.98\n",
      "81 Train accuracy: 0.986667 Test accuracy: 0.9807\n",
      "82 Train accuracy: 0.993333 Test accuracy: 0.979\n",
      "83 Train accuracy: 1.0 Test accuracy: 0.979\n",
      "84 Train accuracy: 0.993333 Test accuracy: 0.9752\n",
      "85 Train accuracy: 0.993333 Test accuracy: 0.9775\n",
      "86 Train accuracy: 0.986667 Test accuracy: 0.975\n",
      "87 Train accuracy: 0.993333 Test accuracy: 0.9763\n",
      "88 Train accuracy: 0.993333 Test accuracy: 0.972\n",
      "89 Train accuracy: 1.0 Test accuracy: 0.9782\n",
      "90 Train accuracy: 1.0 Test accuracy: 0.9795\n",
      "91 Train accuracy: 0.986667 Test accuracy: 0.9742\n",
      "92 Train accuracy: 0.986667 Test accuracy: 0.9775\n",
      "93 Train accuracy: 0.986667 Test accuracy: 0.9803\n",
      "94 Train accuracy: 1.0 Test accuracy: 0.9806\n",
      "95 Train accuracy: 0.993333 Test accuracy: 0.977\n",
      "96 Train accuracy: 0.993333 Test accuracy: 0.9781\n",
      "97 Train accuracy: 0.993333 Test accuracy: 0.9751\n",
      "98 Train accuracy: 0.98 Test accuracy: 0.9794\n",
      "99 Train accuracy: 1.0 Test accuracy: 0.9804\n"
     ]
    }
   ],
   "source": [
    "n_epochs = 100\n",
    "batch_size = 150\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    for epoch in range(n_epochs):\n",
    "        for iteration in range(mnist.train.num_examples // batch_size):\n",
    "            X_batch, y_batch = mnist.train.next_batch(batch_size)\n",
    "            X_batch = X_batch.reshape((-1, n_steps, n_inputs))\n",
    "            sess.run(training_op, feed_dict={X: X_batch, y: y_batch})\n",
    "        acc_train = accuracy.eval(feed_dict={X: X_batch, y: y_batch})\n",
    "        acc_test = accuracy.eval(feed_dict={X: X_test, y: y_test})\n",
    "        print(epoch, \"Train accuracy:\", acc_train, \"Test accuracy:\", acc_test)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Multi-layer RNN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_steps = 28\n",
    "n_inputs = 28\n",
    "n_outputs = 10\n",
    "\n",
    "learning_rate = 0.001\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.int32, [None])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_neurons = 100\n",
    "n_layers = 3\n",
    "\n",
    "layers = [tf.contrib.rnn.BasicRNNCell(num_units=n_neurons,\n",
    "                                      activation=tf.nn.relu)\n",
    "          for layer in range(n_layers)]\n",
    "multi_layer_cell = tf.contrib.rnn.MultiRNNCell(layers)\n",
    "outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "states_concat = tf.concat(axis=1, values=states)\n",
    "logits = tf.layers.dense(states_concat, n_outputs)\n",
    "xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y, logits=logits)\n",
    "loss = tf.reduce_mean(xentropy)\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "correct = tf.nn.in_top_k(logits, y, 1)\n",
    "accuracy = tf.reduce_mean(tf.cast(correct, tf.float32))\n",
    "\n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 Train accuracy: 0.96 Test accuracy: 0.9418\n",
      "1 Train accuracy: 0.98 Test accuracy: 0.9686\n",
      "2 Train accuracy: 0.94 Test accuracy: 0.9693\n",
      "3 Train accuracy: 0.973333 Test accuracy: 0.9715\n",
      "4 Train accuracy: 0.986667 Test accuracy: 0.9758\n",
      "5 Train accuracy: 0.993333 Test accuracy: 0.9774\n",
      "6 Train accuracy: 0.993333 Test accuracy: 0.9815\n",
      "7 Train accuracy: 1.0 Test accuracy: 0.9765\n",
      "8 Train accuracy: 0.986667 Test accuracy: 0.9831\n",
      "9 Train accuracy: 0.986667 Test accuracy: 0.9804\n"
     ]
    }
   ],
   "source": [
    "n_epochs = 10\n",
    "batch_size = 150\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    for epoch in range(n_epochs):\n",
    "        for iteration in range(mnist.train.num_examples // batch_size):\n",
    "            X_batch, y_batch = mnist.train.next_batch(batch_size)\n",
    "            X_batch = X_batch.reshape((-1, n_steps, n_inputs))\n",
    "            sess.run(training_op, feed_dict={X: X_batch, y: y_batch})\n",
    "        acc_train = accuracy.eval(feed_dict={X: X_batch, y: y_batch})\n",
    "        acc_test = accuracy.eval(feed_dict={X: X_test, y: y_test})\n",
    "        print(epoch, \"Train accuracy:\", acc_train, \"Test accuracy:\", acc_test)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Time series"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "t_min, t_max = 0, 30\n",
    "resolution = 0.1\n",
    "\n",
    "def time_series(t):\n",
    "    return t * np.sin(t) / 3 + 2 * np.sin(t*5)\n",
    "\n",
    "def next_batch(batch_size, n_steps):\n",
    "    t0 = np.random.rand(batch_size, 1) * (t_max - t_min - n_steps * resolution)\n",
    "    Ts = t0 + np.arange(0., n_steps + 1) * resolution\n",
    "    ys = time_series(Ts)\n",
    "    return ys[:, :-1].reshape(-1, n_steps, 1), ys[:, 1:].reshape(-1, n_steps, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Saving figure time_series_plot\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nhb4AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32ee59a358>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "t = np.linspace(t_min, t_max, int((t_max - t_min) / resolution))\n",
    "\n",
    "n_steps = 20\n",
    "t_instance = np.linspace(12.2, 12.2 + resolution * (n_steps + 1), n_steps + 1)\n",
    "\n",
    "plt.figure(figsize=(11,4))\n",
    "plt.subplot(121)\n",
    "plt.title(\"A time series (generated)\", fontsize=14)\n",
    "plt.plot(t, time_series(t), label=r\"$t . \\sin(t) / 3 + 2 . \\sin(5t)$\")\n",
    "plt.plot(t_instance[:-1], time_series(t_instance[:-1]), \"b-\", linewidth=3, label=\"A training instance\")\n",
    "plt.legend(loc=\"lower left\", fontsize=14)\n",
    "plt.axis([0, 30, -17, 13])\n",
    "plt.xlabel(\"Time\")\n",
    "plt.ylabel(\"Value\")\n",
    "\n",
    "plt.subplot(122)\n",
    "plt.title(\"A training instance\", fontsize=14)\n",
    "plt.plot(t_instance[:-1], time_series(t_instance[:-1]), \"bo\", markersize=10, label=\"instance\")\n",
    "plt.plot(t_instance[1:], time_series(t_instance[1:]), \"w*\", markersize=10, label=\"target\")\n",
    "plt.legend(loc=\"upper left\")\n",
    "plt.xlabel(\"Time\")\n",
    "\n",
    "\n",
    "save_fig(\"time_series_plot\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "X_batch, y_batch = next_batch(1, n_steps)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 1.38452097,  2.05081182],\n",
       "       [ 2.05081182,  2.29742291],\n",
       "       [ 2.29742291,  2.0465599 ],\n",
       "       [ 2.0465599 ,  1.34009916],\n",
       "       [ 1.34009916,  0.32948704],\n",
       "       [ 0.32948704, -0.76115235],\n",
       "       [-0.76115235, -1.68967022],\n",
       "       [-1.68967022, -2.25492776],\n",
       "       [-2.25492776, -2.34576159],\n",
       "       [-2.34576159, -1.96789418],\n",
       "       [-1.96789418, -1.24220428],\n",
       "       [-1.24220428, -0.37478448],\n",
       "       [-0.37478448,  0.39387907],\n",
       "       [ 0.39387907,  0.84815766],\n",
       "       [ 0.84815766,  0.85045064],\n",
       "       [ 0.85045064,  0.3752526 ],\n",
       "       [ 0.3752526 , -0.48422846],\n",
       "       [-0.48422846, -1.53852738],\n",
       "       [-1.53852738, -2.54795941],\n",
       "       [-2.54795941, -3.28097239]])"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.c_[X_batch[0], y_batch[0]]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Using an `OuputProjectionWrapper`"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Let's create the RNN. It will contain 100 recurrent neurons and we will unroll it over 20 time steps since each traiing instance will be 20 inputs long. Each input will contain only one feature (the value at that time). The targets are also sequences of 20 inputs, each containing a sigle value:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_steps = 20\n",
    "n_inputs = 1\n",
    "n_neurons = 100\n",
    "n_outputs = 1\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.float32, [None, n_steps, n_outputs])\n",
    "\n",
    "cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons, activation=tf.nn.relu)\n",
    "outputs, states = tf.nn.dynamic_rnn(cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "At each time step we now have an output vector of size 100. But what we actually want is a single output value at each time step. The simplest solution is to wrap the cell in an `OutputProjectionWrapper`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_steps = 20\n",
    "n_inputs = 1\n",
    "n_neurons = 100\n",
    "n_outputs = 1\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.float32, [None, n_steps, n_outputs])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "cell = tf.contrib.rnn.OutputProjectionWrapper(\n",
    "    tf.contrib.rnn.BasicRNNCell(num_units=n_neurons, activation=tf.nn.relu),\n",
    "    output_size=n_outputs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "outputs, states = tf.nn.dynamic_rnn(cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "learning_rate = 0.001\n",
    "\n",
    "loss = tf.reduce_mean(tf.square(outputs - y)) # MSE\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "\n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "saver = tf.train.Saver()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 \tMSE: 13.6543\n",
      "100 \tMSE: 0.538476\n",
      "200 \tMSE: 0.168532\n",
      "300 \tMSE: 0.0879579\n",
      "400 \tMSE: 0.0633425\n",
      "500 \tMSE: 0.061859\n",
      "600 \tMSE: 0.0558801\n",
      "700 \tMSE: 0.0498718\n",
      "800 \tMSE: 0.0518417\n",
      "900 \tMSE: 0.0482838\n",
      "1000 \tMSE: 0.0483549\n",
      "1100 \tMSE: 0.0503321\n",
      "1200 \tMSE: 0.0412116\n",
      "1300 \tMSE: 0.0488435\n",
      "1400 \tMSE: 0.0426057\n"
     ]
    }
   ],
   "source": [
    "n_iterations = 1500\n",
    "batch_size = 50\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    for iteration in range(n_iterations):\n",
    "        X_batch, y_batch = next_batch(batch_size, n_steps)\n",
    "        sess.run(training_op, feed_dict={X: X_batch, y: y_batch})\n",
    "        if iteration % 100 == 0:\n",
    "            mse = loss.eval(feed_dict={X: X_batch, y: y_batch})\n",
    "            print(iteration, \"\\tMSE:\", mse)\n",
    "    \n",
    "    saver.save(sess, \"./my_time_series_model\") # not shown in the book"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO:tensorflow:Restoring parameters from ./my_time_series_model\n"
     ]
    }
   ],
   "source": [
    "with tf.Session() as sess:                          # not shown in the book\n",
    "    saver.restore(sess, \"./my_time_series_model\")   # not shown\n",
    "\n",
    "    X_new = time_series(np.array(t_instance[:-1].reshape(-1, n_steps, n_inputs)))\n",
    "    y_pred = sess.run(outputs, feed_dict={X: X_new})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[[-3.42596436],\n",
       "        [-2.48950148],\n",
       "        [-1.1358937 ],\n",
       "        [ 0.75142008],\n",
       "        [ 2.19939661],\n",
       "        [ 3.14104176],\n",
       "        [ 3.54801917],\n",
       "        [ 3.34113908],\n",
       "        [ 2.82566142],\n",
       "        [ 2.17759967],\n",
       "        [ 1.65191436],\n",
       "        [ 1.55619645],\n",
       "        [ 1.94783175],\n",
       "        [ 2.74632907],\n",
       "        [ 3.89091802],\n",
       "        [ 5.11678171],\n",
       "        [ 6.13101864],\n",
       "        [ 6.67043686],\n",
       "        [ 6.62354612],\n",
       "        [ 6.05428839]]], dtype=float32)"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_pred"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Saving figure time_series_pred_plot\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32d74e3898>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.title(\"Testing the model\", fontsize=14)\n",
    "plt.plot(t_instance[:-1], time_series(t_instance[:-1]), \"bo\", markersize=10, label=\"instance\")\n",
    "plt.plot(t_instance[1:], time_series(t_instance[1:]), \"w*\", markersize=10, label=\"target\")\n",
    "plt.plot(t_instance[1:], y_pred[0,:,0], \"r.\", markersize=10, label=\"prediction\")\n",
    "plt.legend(loc=\"upper left\")\n",
    "plt.xlabel(\"Time\")\n",
    "\n",
    "save_fig(\"time_series_pred_plot\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Without using an `OutputProjectionWrapper`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_steps = 20\n",
    "n_inputs = 1\n",
    "n_neurons = 100\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.float32, [None, n_steps, n_outputs])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "cell = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons, activation=tf.nn.relu)\n",
    "rnn_outputs, states = tf.nn.dynamic_rnn(cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_outputs = 1\n",
    "learning_rate = 0.001"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "stacked_rnn_outputs = tf.reshape(rnn_outputs, [-1, n_neurons])\n",
    "stacked_outputs = tf.layers.dense(stacked_rnn_outputs, n_outputs)\n",
    "outputs = tf.reshape(stacked_outputs, [-1, n_steps, n_outputs])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "loss = tf.reduce_mean(tf.square(outputs - y))\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "\n",
    "init = tf.global_variables_initializer()\n",
    "saver = tf.train.Saver()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 \tMSE: 11.6768\n",
      "100 \tMSE: 0.51119\n",
      "200 \tMSE: 0.14452\n",
      "300 \tMSE: 0.0760974\n",
      "400 \tMSE: 0.063713\n",
      "500 \tMSE: 0.0601674\n",
      "600 \tMSE: 0.0531676\n",
      "700 \tMSE: 0.0493623\n",
      "800 \tMSE: 0.0519282\n",
      "900 \tMSE: 0.0482475\n",
      "1000 \tMSE: 0.048083\n",
      "1100 \tMSE: 0.0484352\n",
      "1200 \tMSE: 0.0418098\n",
      "1300 \tMSE: 0.0477387\n",
      "1400 \tMSE: 0.0419062\n"
     ]
    }
   ],
   "source": [
    "n_iterations = 1500\n",
    "batch_size = 50\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    for iteration in range(n_iterations):\n",
    "        X_batch, y_batch = next_batch(batch_size, n_steps)\n",
    "        sess.run(training_op, feed_dict={X: X_batch, y: y_batch})\n",
    "        if iteration % 100 == 0:\n",
    "            mse = loss.eval(feed_dict={X: X_batch, y: y_batch})\n",
    "            print(iteration, \"\\tMSE:\", mse)\n",
    "    \n",
    "    X_new = time_series(np.array(t_instance[:-1].reshape(-1, n_steps, n_inputs)))\n",
    "    y_pred = sess.run(outputs, feed_dict={X: X_new})\n",
    "    \n",
    "    saver.save(sess, \"./my_time_series_model\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[[-3.42077947],\n",
       "        [-2.47134852],\n",
       "        [-1.14368439],\n",
       "        [ 0.75839251],\n",
       "        [ 2.15983796],\n",
       "        [ 3.11996722],\n",
       "        [ 3.52640414],\n",
       "        [ 3.43011165],\n",
       "        [ 2.8376286 ],\n",
       "        [ 2.18515253],\n",
       "        [ 1.6659894 ],\n",
       "        [ 1.54036307],\n",
       "        [ 1.89834416],\n",
       "        [ 2.73356843],\n",
       "        [ 3.9192028 ],\n",
       "        [ 5.16150093],\n",
       "        [ 6.10899305],\n",
       "        [ 6.66055822],\n",
       "        [ 6.65600348],\n",
       "        [ 6.09106874]]], dtype=float32)"
      ]
     },
     "execution_count": 61,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_pred"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32d77c4c50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.title(\"Testing the model\", fontsize=14)\n",
    "plt.plot(t_instance[:-1], time_series(t_instance[:-1]), \"bo\", markersize=10, label=\"instance\")\n",
    "plt.plot(t_instance[1:], time_series(t_instance[1:]), \"w*\", markersize=10, label=\"target\")\n",
    "plt.plot(t_instance[1:], y_pred[0,:,0], \"r.\", markersize=10, label=\"prediction\")\n",
    "plt.legend(loc=\"upper left\")\n",
    "plt.xlabel(\"Time\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Generating a creative new sequence"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO:tensorflow:Restoring parameters from ./my_time_series_model\n"
     ]
    }
   ],
   "source": [
    "with tf.Session() as sess:                        # not shown in the book\n",
    "    saver.restore(sess, \"./my_time_series_model\") # not shown\n",
    "\n",
    "    sequence = [0.] * n_steps\n",
    "    for iteration in range(300):\n",
    "        X_batch = np.array(sequence[-n_steps:]).reshape(1, n_steps, 1)\n",
    "        y_pred = sess.run(outputs, feed_dict={X: X_batch})\n",
    "        sequence.append(y_pred[0, -1, 0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32f56d62e8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(8,4))\n",
    "plt.plot(np.arange(len(sequence)), sequence, \"b-\")\n",
    "plt.plot(t[:n_steps], sequence[:n_steps], \"b-\", linewidth=3)\n",
    "plt.xlabel(\"Time\")\n",
    "plt.ylabel(\"Value\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO:tensorflow:Restoring parameters from ./my_time_series_model\n",
      "Saving figure creative_sequence_plot\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nifDkkztvZnrBBXDIIfCxj/XuPUsziVpSm6RBQBvQLmmgpLZs3/GSjlQyAvgGsKhW8WBmZvXZbz94\nwxvg17/OLYRLgGsj4rEa+4YAGztt20gawmpmtsd4+cvTDeOWLt25rXIFotmaOoSpTp8GPsfOYU6z\ngLmkE8wY4PPA/sAm4FbS5W0zM+uDU06Bjo7Gv293Q1eBDwGnAMd08RZbgGGdtg0Dan5x5GGrZlZm\n06bBwoVpCe5nn4UVK+DYY+t/fUdHBx0NSPYtO4SpEXw528ysPkuWwJw5sHx5c4cwSboQuIxUEIh0\nxaENuD8ijpN0OTAqImZnx48hzZMY0XkOhHO+mZXd3XfDzJnw5z/DD38IN98Mt9zS+/fr7RAmFxBm\nZsYLL8CIEbBpU9MLiEG89ArDx0gr7Z0XERskTQDuAN4K/A9pRaYBETGrxns555tZ6U2fDjNmwLx5\n8K1vwUkn9f69SjMHwszMmq+9Pc2DaLaI2B4R6ysP0pCl7RGxIdt/P3Ae8GPg/4DBwPnNj9TMrDVc\nfjlcfz0cdBCceGI+MfgKhJmZAbBgAZx+evNXYWoU53wzs57xEKYafDIxM+uZ3p5MWoFzvplZz3gI\nk5mZmZmZ9TsXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZm\nZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZmVjcXEGZmZmZm\nVjcXEGZmZmZmVreWKiAk7SXpu5LWStooaamkUzsdc7KklZK2SLpN0qi84jUzs76T1CFpm6RNkjZL\nWtlp/7nZeWGzpPmS9skrVjMza7ECAmgH1gEnRMRw4LPATytFgqQRwM+Ai4D9gKXAT3KKNXcdHR15\nh9Cvyty+MrcNyt2+MrctRwF8ICKGRcTQiBhf2SFpInANMAs4ENgGXJ1PmPkq++9emdtX5rZBudtX\n5rb1RUsVEBHxbERcEhGPZs9/CawBjs0OmQksj4j5EfEccDFwtKQjcwk4Z2X/pS5z+8rcNih3+8rc\ntpypi+3nAjdHxOKIeBb4DDBT0uDmhdYayv67V+b2lbltUO72lbltfdFSBURnkg4EjgSWZ5smAvdW\n9mcnk1XZdjMzK64vSFov6Q+SplRt75z3VwPPkc4NZmaWg5YtICS1A9cD34+Ih7PNQ4CNnQ7dCAxt\n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\nRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32d77c4320>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "with tf.Session() as sess:\n",
    "    saver.restore(sess, \"./my_time_series_model\")\n",
    "\n",
    "    sequence1 = [0. for i in range(n_steps)]\n",
    "    for iteration in range(len(t) - n_steps):\n",
    "        X_batch = np.array(sequence1[-n_steps:]).reshape(1, n_steps, 1)\n",
    "        y_pred = sess.run(outputs, feed_dict={X: X_batch})\n",
    "        sequence1.append(y_pred[0, -1, 0])\n",
    "\n",
    "    sequence2 = [time_series(i * resolution + t_min + (t_max-t_min/3)) for i in range(n_steps)]\n",
    "    for iteration in range(len(t) - n_steps):\n",
    "        X_batch = np.array(sequence2[-n_steps:]).reshape(1, n_steps, 1)\n",
    "        y_pred = sess.run(outputs, feed_dict={X: X_batch})\n",
    "        sequence2.append(y_pred[0, -1, 0])\n",
    "\n",
    "plt.figure(figsize=(11,4))\n",
    "plt.subplot(121)\n",
    "plt.plot(t, sequence1, \"b-\")\n",
    "plt.plot(t[:n_steps], sequence1[:n_steps], \"b-\", linewidth=3)\n",
    "plt.xlabel(\"Time\")\n",
    "plt.ylabel(\"Value\")\n",
    "\n",
    "plt.subplot(122)\n",
    "plt.plot(t, sequence2, \"b-\")\n",
    "plt.plot(t[:n_steps], sequence2[:n_steps], \"b-\", linewidth=3)\n",
    "plt.xlabel(\"Time\")\n",
    "save_fig(\"creative_sequence_plot\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Deep RNN"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## MultiRNNCell"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_inputs = 2\n",
    "n_steps = 5\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_neurons = 100\n",
    "n_layers = 3\n",
    "\n",
    "layers = [tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "          for layer in range(n_layers)]\n",
    "multi_layer_cell = tf.contrib.rnn.MultiRNNCell(layers)\n",
    "outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "X_batch = np.random.rand(2, n_steps, n_inputs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    outputs_val, states_val = sess.run([outputs, states], feed_dict={X: X_batch})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2, 5, 100)"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "outputs_val.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Distributing a Deep RNN Across Multiple GPUs"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Do **NOT** do this:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "with tf.device(\"/gpu:0\"):  # BAD! This is ignored.\n",
    "    layer1 = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "\n",
    "with tf.device(\"/gpu:1\"):  # BAD! Ignored again.\n",
    "    layer2 = tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Instead, you need a `DeviceCellWrapper`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "import tensorflow as tf\n",
    "\n",
    "class DeviceCellWrapper(tf.contrib.rnn.RNNCell):\n",
    "  def __init__(self, device, cell):\n",
    "    self._cell = cell\n",
    "    self._device = device\n",
    "\n",
    "  @property\n",
    "  def state_size(self):\n",
    "    return self._cell.state_size\n",
    "\n",
    "  @property\n",
    "  def output_size(self):\n",
    "    return self._cell.output_size\n",
    "\n",
    "  def __call__(self, inputs, state, scope=None):\n",
    "    with tf.device(self._device):\n",
    "        return self._cell(inputs, state, scope)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_inputs = 5\n",
    "n_steps = 20\n",
    "n_neurons = 100\n",
    "\n",
    "X = tf.placeholder(tf.float32, shape=[None, n_steps, n_inputs])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "devices = [\"/cpu:0\", \"/cpu:0\", \"/cpu:0\"] # replace with [\"/gpu:0\", \"/gpu:1\", \"/gpu:2\"] if you have 3 GPUs\n",
    "cells = [DeviceCellWrapper(dev,tf.contrib.rnn.BasicRNNCell(num_units=n_neurons))\n",
    "         for dev in devices]\n",
    "multi_layer_cell = tf.contrib.rnn.MultiRNNCell(cells)\n",
    "outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true,
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[[-0.06683909 -0.06814943  0.12806301 ..., -0.04951219  0.0169118\n",
      "    0.09129722]\n",
      "  [-0.03898398 -0.32816607  0.25709429 ..., -0.22360352 -0.00203764\n",
      "    0.18901907]\n",
      "  [-0.14598769 -0.03324183  0.06588719 ..., -0.36336255 -0.117153\n",
      "    0.39544109]\n",
      "  ..., \n",
      "  [-0.52596134  0.04002573  0.14033252 ...,  0.18522167  0.25101244\n",
      "   -0.05308188]\n",
      "  [-0.45618156 -0.11686647 -0.09905577 ..., -0.17943858  0.27567461\n",
      "   -0.04363405]\n",
      "  [-0.55723065  0.13874871 -0.14983818 ...,  0.04673974  0.10338999\n",
      "   -0.03823486]]\n",
      "\n",
      " [[-0.0191099  -0.06458578  0.08206855 ..., -0.07772326 -0.05498064\n",
      "    0.01358664]\n",
      "  [-0.05150904 -0.36381066  0.0913103  ..., -0.12480559 -0.03924585\n",
      "    0.06585156]\n",
      "  [-0.29961377 -0.00120922  0.06789977 ..., -0.27556923 -0.15278165\n",
      "    0.21452278]\n",
      "  ..., \n",
      "  [-0.6460501   0.17479922  0.14066698 ..., -0.08995064 -0.03049678\n",
      "    0.05738082]\n",
      "  [-0.61097401 -0.17900243 -0.23193845 ..., -0.2500132   0.25146627\n",
      "    0.36902413]\n",
      "  [-0.25920284 -0.08149087  0.19740498 ..., -0.32611009 -0.02686078\n",
      "    0.11232778]]]\n"
     ]
    }
   ],
   "source": [
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    print(sess.run(outputs, feed_dict={X: np.random.rand(2, n_steps, n_inputs)}))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Dropout"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_inputs = 1\n",
    "n_neurons = 100\n",
    "n_layers = 3\n",
    "n_steps = 20\n",
    "n_outputs = 1\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.float32, [None, n_steps, n_outputs])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "keep_prob = 0.5\n",
    "\n",
    "cells = [tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "         for layer in range(n_layers)]\n",
    "cells_drop = [tf.contrib.rnn.DropoutWrapper(cell, input_keep_prob=keep_prob)\n",
    "              for cell in cells]\n",
    "multi_layer_cell = tf.contrib.rnn.MultiRNNCell(cells_drop)\n",
    "rnn_outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "learning_rate = 0.01\n",
    "\n",
    "stacked_rnn_outputs = tf.reshape(rnn_outputs, [-1, n_neurons])\n",
    "stacked_outputs = tf.layers.dense(stacked_rnn_outputs, n_outputs)\n",
    "outputs = tf.reshape(stacked_outputs, [-1, n_steps, n_outputs])\n",
    "\n",
    "loss = tf.reduce_mean(tf.square(outputs - y))\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "\n",
    "init = tf.global_variables_initializer()\n",
    "saver = tf.train.Saver()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Unfortunately, this code is only usable for training, because the `DropoutWrapper` class has no `training` parameter, so it always applies dropout, even when the model is not being trained, so we must first train the model, then create a different model for testing, without the `DropoutWrapper`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 Training MSE: 13.7079\n",
      "100 Training MSE: 4.25301\n",
      "200 Training MSE: 3.3346\n",
      "300 Training MSE: 3.62894\n",
      "400 Training MSE: 3.29399\n",
      "500 Training MSE: 3.88701\n",
      "600 Training MSE: 3.38845\n",
      "700 Training MSE: 3.05871\n",
      "800 Training MSE: 3.84628\n",
      "900 Training MSE: 4.78431\n"
     ]
    }
   ],
   "source": [
    "n_iterations = 1000\n",
    "batch_size = 50\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    for iteration in range(n_iterations):\n",
    "        X_batch, y_batch = next_batch(batch_size, n_steps)\n",
    "        _, mse = sess.run([training_op, loss], feed_dict={X: X_batch, y: y_batch})\n",
    "        if iteration % 100 == 0:\n",
    "            print(iteration, \"Training MSE:\", mse)\n",
    "    \n",
    "    saver.save(sess, \"./my_dropout_time_series_model\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Now that the model is trained, we need to create the model again, but without the `DropoutWrapper` for testing:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "n_inputs = 1\n",
    "n_neurons = 100\n",
    "n_layers = 3\n",
    "n_steps = 20\n",
    "n_outputs = 1\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.float32, [None, n_steps, n_outputs])\n",
    "\n",
    "keep_prob = 0.5\n",
    "\n",
    "cells = [tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "         for layer in range(n_layers)]\n",
    "multi_layer_cell = tf.contrib.rnn.MultiRNNCell(cells)\n",
    "rnn_outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)\n",
    "\n",
    "learning_rate = 0.01\n",
    "\n",
    "stacked_rnn_outputs = tf.reshape(rnn_outputs, [-1, n_neurons])\n",
    "stacked_outputs = tf.layers.dense(stacked_rnn_outputs, n_outputs)\n",
    "outputs = tf.reshape(stacked_outputs, [-1, n_steps, n_outputs])\n",
    "\n",
    "loss = tf.reduce_mean(tf.square(outputs - y))\n",
    "\n",
    "init = tf.global_variables_initializer()\n",
    "saver = tf.train.Saver()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO:tensorflow:Restoring parameters from ./my_dropout_time_series_model\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n/nz69OnDKaecwujRo9m///jMnFFRUfzf//0fp59+Ol26dOH6669v1PkwpiYej4eMjNls2fIAJSWp\nJCS8yuLFTxMf/yolJals2fIAGRmzbY7sEBH6AaCoCB59FHJzweNx/n30UWd5INPAmQNg3bp1fPLJ\nJ3z00UeVE0J8+eWXHDhwgH379vHUU0+xbds2rr32WubPn09RURG/+93vyMjIoKysjLKyMn7xi18w\nYcIEioqKuPLKK08YQrbizt7j8XDppZfSq1cv9u3bxxdffMHVV1/NGWecwV//+lfOO+88Dh48SFEN\nx7F+/XpmzJjBkiVL2L9/Pz169ODqq6+uss0//vEP3nvvPbZv384rr7zC2rVrG3U+jKnu+utvJirq\ne4YP/xPDh2eSmvoN55xzDiNGfM3w4ZkMH/4noqK+54Ybbgl2Vg24OydwQ180cEpIVVXduFE1KsqZ\nvbLiFRWlumlTjWnUyIU0evbsqU899VTl+6ysLO3du7dmZ2dru3bttLS0tHLd5MmT9a677qry+R/9\n6Ee6ceNG3bhxo3bv3r3KuqFDh1ZO95idna1JSUmqqrp582bt2rWrlpeXn5CfhQsXVk4nWcF32shr\nr71Wb7vttsp1hw4d0jZt2mhubq6qqoqIbt68uXL9L3/5S73//vvrPAe1fW/GVGhJUzu2RITwlJD+\n0a8f+BSJAM77vn0DmwZUmc4xOTmZ/Px8wJntq02bNpXrcnNzeeihh6pM75iXl0d+fj75+fl07969\nSrrJyck17i8vL4/k5OQmVZrl5+dXSfekk06iS5cufPHFF5XL4uPjK/+OiYnh0KFDjd6PMb5a0tSO\npiUUAcXGwtSpkJwMUVHOv1OnOssDmQZVp3DMzc0lMTEROHG6xqSkJGbOnElRURFFRUUUFxdz6NAh\nrrrqKrp161blIgywb9++GveXlJTEvn37aiwvra8CODExkdzc3Mr3hw8f5ptvvqkSxIxxW/WpHX2F\n4tSOkS70AwDAzTfDtm2wYQO8/77zPghpPP7443zxxRcUFRVx3333VZapa7URMv/nf/6Hv/71r2zd\nuhVwLr5ZWVkcPnyY8847j9atWzNv3jxvU7llldtVd84559CtWzemT5/OkSNHOHr0KJs3bwacu/e8\nvDzKyspq/OzYsWNZsGAB//73vzl69CgzZszg3HPPrVLBbIzbWtrUjpGuZQQAgLg4GDas0XftbqYx\n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\nGXhZNt5ldhIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32d73cada0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "with tf.Session() as sess:\n",
    "    saver.restore(sess, \"./my_dropout_time_series_model\")\n",
    "\n",
    "    X_new = time_series(np.array(t_instance[:-1].reshape(-1, n_steps, n_inputs)))\n",
    "    y_pred = sess.run(outputs, feed_dict={X: X_new})\n",
    "\n",
    "plt.title(\"Testing the model\", fontsize=14)\n",
    "plt.plot(t_instance[:-1], time_series(t_instance[:-1]), \"bo\", markersize=10, label=\"instance\")\n",
    "plt.plot(t_instance[1:], time_series(t_instance[1:]), \"w*\", markersize=10, label=\"target\")\n",
    "plt.plot(t_instance[1:], y_pred[0,:,0], \"r.\", markersize=10, label=\"prediction\")\n",
    "plt.legend(loc=\"upper left\")\n",
    "plt.xlabel(\"Time\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Oops, it seems that Dropout does not help at all in this particular case. :/"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Another option is to write a script with a command line argument to specify whether you want to train the mode or use it for making predictions:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 Training MSE: 13.6546\n",
      "100 Training MSE: 4.41883\n",
      "200 Training MSE: 3.23384\n",
      "300 Training MSE: 3.71355\n",
      "400 Training MSE: 2.6646\n",
      "500 Training MSE: 3.77632\n",
      "600 Training MSE: 3.0631\n",
      "700 Training MSE: 3.56676\n",
      "800 Training MSE: 3.84577\n",
      "900 Training MSE: 4.79746\n"
     ]
    }
   ],
   "source": [
    "reset_graph()\n",
    "\n",
    "import sys\n",
    "training = True  # in a script, this would be (sys.argv[-1] == \"train\") instead\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.float32, [None, n_steps, n_outputs])\n",
    "\n",
    "cells = [tf.contrib.rnn.BasicRNNCell(num_units=n_neurons)\n",
    "         for layer in range(n_layers)]\n",
    "if training:\n",
    "    cells = [tf.contrib.rnn.DropoutWrapper(cell, input_keep_prob=keep_prob)\n",
    "             for cell in cells]\n",
    "multi_layer_cell = tf.contrib.rnn.MultiRNNCell(cells)\n",
    "rnn_outputs, states = tf.nn.dynamic_rnn(multi_layer_cell, X, dtype=tf.float32)\n",
    "\n",
    "stacked_rnn_outputs = tf.reshape(rnn_outputs, [-1, n_neurons])    # not shown in the book\n",
    "stacked_outputs = tf.layers.dense(stacked_rnn_outputs, n_outputs) # not shown\n",
    "outputs = tf.reshape(stacked_outputs, [-1, n_steps, n_outputs])   # not shown\n",
    "loss = tf.reduce_mean(tf.square(outputs - y))                     # not shown\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)   # not shown\n",
    "training_op = optimizer.minimize(loss)                            # not shown\n",
    "init = tf.global_variables_initializer()                          # not shown\n",
    "saver = tf.train.Saver()                                          # not shown\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    if training:\n",
    "        init.run()\n",
    "        for iteration in range(n_iterations):\n",
    "            X_batch, y_batch = next_batch(batch_size, n_steps)    # not shown\n",
    "            _, mse = sess.run([training_op, loss], feed_dict={X: X_batch, y: y_batch}) # not shown\n",
    "            if iteration % 100 == 0:                              # not shown\n",
    "                print(iteration, \"Training MSE:\", mse)            # not shown\n",
    "        save_path = saver.save(sess, \"/tmp/my_model.ckpt\")\n",
    "    else:\n",
    "        saver.restore(sess, \"/tmp/my_model.ckpt\")\n",
    "        X_new = time_series(np.array(t_instance[:-1].reshape(-1, n_steps, n_inputs))) # not shown\n",
    "        y_pred = sess.run(outputs, feed_dict={X: X_new})                              # not shown"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# LSTM"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "lstm_cell = tf.contrib.rnn.BasicLSTMCell(num_units=n_neurons)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "n_steps = 28\n",
    "n_inputs = 28\n",
    "n_neurons = 150\n",
    "n_outputs = 10\n",
    "n_layers = 3\n",
    "\n",
    "learning_rate = 0.001\n",
    "\n",
    "X = tf.placeholder(tf.float32, [None, n_steps, n_inputs])\n",
    "y = tf.placeholder(tf.int32, [None])\n",
    "\n",
    "lstm_cells = [tf.contrib.rnn.BasicLSTMCell(num_units=n_neurons)\n",
    "              for layer in range(n_layers)]\n",
    "multi_cell = tf.contrib.rnn.MultiRNNCell(lstm_cells)\n",
    "outputs, states = tf.nn.dynamic_rnn(multi_cell, X, dtype=tf.float32)\n",
    "top_layer_h_state = states[-1][1]\n",
    "logits = tf.layers.dense(top_layer_h_state, n_outputs, name=\"softmax\")\n",
    "xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y, logits=logits)\n",
    "loss = tf.reduce_mean(xentropy, name=\"loss\")\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "correct = tf.nn.in_top_k(logits, y, 1)\n",
    "accuracy = tf.reduce_mean(tf.cast(correct, tf.float32))\n",
    "    \n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(LSTMStateTuple(c=<tf.Tensor 'rnn/while/Exit_2:0' shape=(?, 150) dtype=float32>, h=<tf.Tensor 'rnn/while/Exit_3:0' shape=(?, 150) dtype=float32>),\n",
       " LSTMStateTuple(c=<tf.Tensor 'rnn/while/Exit_4:0' shape=(?, 150) dtype=float32>, h=<tf.Tensor 'rnn/while/Exit_5:0' shape=(?, 150) dtype=float32>),\n",
       " LSTMStateTuple(c=<tf.Tensor 'rnn/while/Exit_6:0' shape=(?, 150) dtype=float32>, h=<tf.Tensor 'rnn/while/Exit_7:0' shape=(?, 150) dtype=float32>))"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "states"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<tf.Tensor 'rnn/while/Exit_7:0' shape=(?, 150) dtype=float32>"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "top_layer_h_state"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true,
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 0 Train accuracy = 0.966667 Test accuracy = 0.9525\n",
      "Epoch 1 Train accuracy = 0.993333 Test accuracy = 0.9747\n",
      "Epoch 2 Train accuracy = 0.993333 Test accuracy = 0.9775\n",
      "Epoch 3 Train accuracy = 0.993333 Test accuracy = 0.9813\n",
      "Epoch 4 Train accuracy = 0.986667 Test accuracy = 0.9837\n",
      "Epoch 5 Train accuracy = 1.0 Test accuracy = 0.9831\n",
      "Epoch 6 Train accuracy = 1.0 Test accuracy = 0.9834\n",
      "Epoch 7 Train accuracy = 0.993333 Test accuracy = 0.9862\n",
      "Epoch 8 Train accuracy = 1.0 Test accuracy = 0.9863\n",
      "Epoch 9 Train accuracy = 0.993333 Test accuracy = 0.9863\n"
     ]
    }
   ],
   "source": [
    "n_epochs = 10\n",
    "batch_size = 150\n",
    "\n",
    "with tf.Session() as sess:\n",
    "    init.run()\n",
    "    for epoch in range(n_epochs):\n",
    "        for iteration in range(mnist.train.num_examples // batch_size):\n",
    "            X_batch, y_batch = mnist.train.next_batch(batch_size)\n",
    "            X_batch = X_batch.reshape((batch_size, n_steps, n_inputs))\n",
    "            sess.run(training_op, feed_dict={X: X_batch, y: y_batch})\n",
    "        acc_train = accuracy.eval(feed_dict={X: X_batch, y: y_batch})\n",
    "        acc_test = accuracy.eval(feed_dict={X: X_test, y: y_test})\n",
    "        print(\"Epoch\", epoch, \"Train accuracy =\", acc_train, \"Test accuracy =\", acc_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "lstm_cell = tf.contrib.rnn.LSTMCell(num_units=n_neurons, use_peepholes=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "gru_cell = tf.contrib.rnn.GRUCell(num_units=n_neurons)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Embeddings"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "This section is based on TensorFlow's [Word2Vec tutorial](https://www.tensorflow.org/versions/r0.11/tutorials/word2vec/index.html)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Fetch the data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "from six.moves import urllib\n",
    "\n",
    "import errno\n",
    "import os\n",
    "import zipfile\n",
    "\n",
    "WORDS_PATH = \"datasets/words\"\n",
    "WORDS_URL = 'http://mattmahoney.net/dc/text8.zip'\n",
    "\n",
    "def mkdir_p(path):\n",
    "    \"\"\"Create directories, ok if they already exist.\n",
    "    \n",
    "    This is for python 2 support. In python >=3.2, simply use:\n",
    "    >>> os.makedirs(path, exist_ok=True)\n",
    "    \"\"\"\n",
    "    try:\n",
    "        os.makedirs(path)\n",
    "    except OSError as exc:\n",
    "        if exc.errno == errno.EEXIST and os.path.isdir(path):\n",
    "            pass\n",
    "        else:\n",
    "            raise\n",
    "\n",
    "def fetch_words_data(words_url=WORDS_URL, words_path=WORDS_PATH):\n",
    "    os.makedirs(words_path, exist_ok=True)\n",
    "    zip_path = os.path.join(words_path, \"words.zip\")\n",
    "    if not os.path.exists(zip_path):\n",
    "        urllib.request.urlretrieve(words_url, zip_path)\n",
    "    with zipfile.ZipFile(zip_path) as f:\n",
    "        data = f.read(f.namelist()[0])\n",
    "    return data.decode(\"ascii\").split()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "words = fetch_words_data()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['anarchism', 'originated', 'as', 'a', 'term']"
      ]
     },
     "execution_count": 94,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "words[:5]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Build the dictionary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "from collections import Counter\n",
    "\n",
    "vocabulary_size = 50000\n",
    "\n",
    "vocabulary = [(\"UNK\", None)] + Counter(words).most_common(vocabulary_size - 1)\n",
    "vocabulary = np.array([word for word, _ in vocabulary])\n",
    "dictionary = {word: code for code, word in enumerate(vocabulary)}\n",
    "data = np.array([dictionary.get(word, 0) for word in words])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('anarchism originated as a term of abuse first used',\n",
       " array([5241, 3082,   12,    6,  195,    2, 3136,   46,   59]))"
      ]
     },
     "execution_count": 96,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\" \".join(words[:9]), data[:9]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'anarchism didn as a term of presidency first used'"
      ]
     },
     "execution_count": 97,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\" \".join([vocabulary[word_index] for word_index in [5241, 3081, 12, 6, 195, 2, 3134, 46, 59]])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('culottes', 0)"
      ]
     },
     "execution_count": 98,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "words[24], data[24]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Generate batches"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "import random\n",
    "from collections import deque\n",
    "\n",
    "def generate_batch(batch_size, num_skips, skip_window):\n",
    "    global data_index\n",
    "    assert batch_size % num_skips == 0\n",
    "    assert num_skips <= 2 * skip_window\n",
    "    batch = np.ndarray(shape=(batch_size), dtype=np.int32)\n",
    "    labels = np.ndarray(shape=(batch_size, 1), dtype=np.int32)\n",
    "    span = 2 * skip_window + 1 # [ skip_window target skip_window ]\n",
    "    buffer = deque(maxlen=span)\n",
    "    for _ in range(span):\n",
    "        buffer.append(data[data_index])\n",
    "        data_index = (data_index + 1) % len(data)\n",
    "    for i in range(batch_size // num_skips):\n",
    "        target = skip_window  # target label at the center of the buffer\n",
    "        targets_to_avoid = [ skip_window ]\n",
    "        for j in range(num_skips):\n",
    "            while target in targets_to_avoid:\n",
    "                target = random.randint(0, span - 1)\n",
    "            targets_to_avoid.append(target)\n",
    "            batch[i * num_skips + j] = buffer[skip_window]\n",
    "            labels[i * num_skips + j, 0] = buffer[target]\n",
    "        buffer.append(data[data_index])\n",
    "        data_index = (data_index + 1) % len(data)\n",
    "    return batch, labels"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "data_index=0\n",
    "batch, labels = generate_batch(8, 2, 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([3082, 3082,   12,   12,    6,    6,  195,  195], dtype=int32),\n",
       " ['originated', 'originated', 'as', 'as', 'a', 'a', 'term', 'term'])"
      ]
     },
     "execution_count": 101,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "batch, [vocabulary[word] for word in batch]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 102,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([[  12],\n",
       "        [5241],\n",
       "        [3082],\n",
       "        [   6],\n",
       "        [ 195],\n",
       "        [  12],\n",
       "        [   2],\n",
       "        [   6]], dtype=int32),\n",
       " ['as', 'anarchism', 'originated', 'a', 'term', 'as', 'of', 'a'])"
      ]
     },
     "execution_count": 102,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "labels, [vocabulary[word] for word in labels[:, 0]]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Build the model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "batch_size = 128\n",
    "embedding_size = 128  # Dimension of the embedding vector.\n",
    "skip_window = 1       # How many words to consider left and right.\n",
    "num_skips = 2         # How many times to reuse an input to generate a label.\n",
    "\n",
    "# We pick a random validation set to sample nearest neighbors. Here we limit the\n",
    "# validation samples to the words that have a low numeric ID, which by\n",
    "# construction are also the most frequent.\n",
    "valid_size = 16     # Random set of words to evaluate similarity on.\n",
    "valid_window = 100  # Only pick dev samples in the head of the distribution.\n",
    "valid_examples = np.random.choice(valid_window, valid_size, replace=False)\n",
    "num_sampled = 64    # Number of negative examples to sample.\n",
    "\n",
    "learning_rate = 0.01"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 104,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "reset_graph()\n",
    "\n",
    "# Input data.\n",
    "train_labels = tf.placeholder(tf.int32, shape=[batch_size, 1])\n",
    "valid_dataset = tf.constant(valid_examples, dtype=tf.int32)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "vocabulary_size = 50000\n",
    "embedding_size = 150\n",
    "\n",
    "# Look up embeddings for inputs.\n",
    "init_embeds = tf.random_uniform([vocabulary_size, embedding_size], -1.0, 1.0)\n",
    "embeddings = tf.Variable(init_embeds)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "train_inputs = tf.placeholder(tf.int32, shape=[None])\n",
    "embed = tf.nn.embedding_lookup(embeddings, train_inputs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "# Construct the variables for the NCE loss\n",
    "nce_weights = tf.Variable(\n",
    "    tf.truncated_normal([vocabulary_size, embedding_size],\n",
    "                        stddev=1.0 / np.sqrt(embedding_size)))\n",
    "nce_biases = tf.Variable(tf.zeros([vocabulary_size]))\n",
    "\n",
    "# Compute the average NCE loss for the batch.\n",
    "# tf.nce_loss automatically draws a new sample of the negative labels each\n",
    "# time we evaluate the loss.\n",
    "loss = tf.reduce_mean(\n",
    "    tf.nn.nce_loss(nce_weights, nce_biases, train_labels, embed,\n",
    "                   num_sampled, vocabulary_size))\n",
    "\n",
    "# Construct the Adam optimizer\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "\n",
    "# Compute the cosine similarity between minibatch examples and all embeddings.\n",
    "norm = tf.sqrt(tf.reduce_sum(tf.square(embeddings), axis=1, keep_dims=True))\n",
    "normalized_embeddings = embeddings / norm\n",
    "valid_embeddings = tf.nn.embedding_lookup(normalized_embeddings, valid_dataset)\n",
    "similarity = tf.matmul(valid_embeddings, normalized_embeddings, transpose_b=True)\n",
    "\n",
    "# Add variable initializer.\n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Train the model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 108,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Iteration: 0\tAverage loss at step  0 :  285.899108887\n",
      "Nearest to would: employee, fayed, ladino, sadr, northamptonshire, epa, presidents, stiff,\n",
      "Nearest to on: vigesimal, dim, mbit, conscientious, musics, molina, tarn, seminar,\n",
      "Nearest to four: arches, evacuation, laser, alia, galveston, raced, latch, bandar,\n",
      "Nearest to his: colloquial, mast, themes, someone, noir, streamline, value, merwara,\n",
      "Nearest to often: milestone, mega, mboxx, antigen, vicki, overriding, adorno, anthony,\n",
      "Nearest to in: sheltering, virtualization, petersen, appeals, weill, examine, compassion, browser,\n",
      "Nearest to an: patchwork, orang, bethune, archaeological, sweat, mislead, keystroke, changeover,\n",
      "Nearest to eight: notch, churchyard, mayfair, brightly, exertion, processing, monuc, reggae,\n",
      "Nearest to these: aphrodite, malignancies, desired, eocene, bg, grandmother, checkpoint, nakano,\n",
      "Nearest to nine: imr, blocks, lucy, learners, rett, recognising, aspects, relating,\n",
      "Nearest to called: electrolyte, thompson, lojban, haken, tapestry, eutyches, mojo, plunge,\n",
      "Nearest to about: gael, bravo, walsingham, octagonal, authorship, declarations, resettlement, fughetta,\n",
      "Nearest to up: ifad, drives, nee, holmes, caligula, impulse, safeties, havel,\n",
      "Nearest to one: indecent, egon, unequivocally, oppenheim, tla, alan, psyche, ellington,\n",
      "Nearest to and: canal, berbers, secluded, leh, huac, etiquette, tajikistan, honneur,\n",
      "Nearest to been: subdivided, unamended, vanes, memorandum, justifying, welwyn, linear, automation,\n",
      "Iteration: 2000\tAverage loss at step  2000 :  130.957044463\n",
      "Iteration: 4000\tAverage loss at step  4000 :  62.5069862733\n",
      "Iteration: 6000\tAverage loss at step  6000 :  42.0973700013\n",
      "Iteration: 8000\tAverage loss at step  8000 :  31.6292150426\n",
      "Iteration: 10000\tAverage loss at step  10000 :  25.6433333195\n",
      "Nearest to would: to, wrongly, floppy, was, bj, expenditure, mossad, int,\n",
      "Nearest to on: in, four, seo, odessa, abscess, sqrt, satisfies, defunct,\n",
      "Nearest to four: nine, zero, five, six, one, two, three, seven,\n",
      "Nearest to his: the, s, chiefly, gage, botany, somali, arslan, died,\n",
      "Nearest to often: cards, revolutionaries, bypasses, crm, carved, gide, mistakenly, and,\n",
      "Nearest to in: of, and, on, two, accredited, the, nine, for,\n",
      "Nearest to an: altaic, chlorine, achill, expedition, trilobites, columbus, depressed, a,\n",
      "Nearest to eight: nine, one, seven, six, five, zero, three, four,\n",
      "Nearest to these: delicate, bambaataa, appropriation, hanson, confirm, mathbb, columbus, contributes,\n",
      "Nearest to nine: zero, one, six, seven, four, three, eight, five,\n",
      "Nearest to called: used, insisting, handed, gallon, rematch, respondent, bind, victorious,\n",
      "Nearest to about: honoria, pa, diet, finds, cosmos, holmes, ataxia, abstraction,\n",
      "Nearest to up: silurian, condom, the, auld, archie, with, seo, raf,\n",
      "Nearest to one: nine, three, eight, two, six, seven, five, four,\n",
      "Nearest to and: astatine, in, the, of, zero, topalov, abdicated, UNK,\n",
      "Nearest to been: have, archie, by, stg, pedals, was, ambients, it,\n"
     ]
    }
   ],
   "source": [
    "num_steps = 10001\n",
    "\n",
    "with tf.Session() as session:\n",
    "    init.run()\n",
    "\n",
    "    average_loss = 0\n",
    "    for step in range(num_steps):\n",
    "        print(\"\\rIteration: {}\".format(step), end=\"\\t\")\n",
    "        batch_inputs, batch_labels = generate_batch(batch_size, num_skips, skip_window)\n",
    "        feed_dict = {train_inputs : batch_inputs, train_labels : batch_labels}\n",
    "\n",
    "        # We perform one update step by evaluating the training op (including it\n",
    "        # in the list of returned values for session.run()\n",
    "        _, loss_val = session.run([training_op, loss], feed_dict=feed_dict)\n",
    "        average_loss += loss_val\n",
    "\n",
    "        if step % 2000 == 0:\n",
    "            if step > 0:\n",
    "                average_loss /= 2000\n",
    "            # The average loss is an estimate of the loss over the last 2000 batches.\n",
    "            print(\"Average loss at step \", step, \": \", average_loss)\n",
    "            average_loss = 0\n",
    "\n",
    "        # Note that this is expensive (~20% slowdown if computed every 500 steps)\n",
    "        if step % 10000 == 0:\n",
    "            sim = similarity.eval()\n",
    "            for i in range(valid_size):\n",
    "                valid_word = vocabulary[valid_examples[i]]\n",
    "                top_k = 8 # number of nearest neighbors\n",
    "                nearest = (-sim[i, :]).argsort()[1:top_k+1]\n",
    "                log_str = \"Nearest to %s:\" % valid_word\n",
    "                for k in range(top_k):\n",
    "                    close_word = vocabulary[nearest[k]]\n",
    "                    log_str = \"%s %s,\" % (log_str, close_word)\n",
    "                print(log_str)\n",
    "\n",
    "    final_embeddings = normalized_embeddings.eval()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "Let's save the final embeddings (of course you can use a TensorFlow `Saver` if you prefer):"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 109,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "np.save(\"./my_final_embeddings.npy\", final_embeddings)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "## Plot the embeddings"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 110,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "def plot_with_labels(low_dim_embs, labels):\n",
    "    assert low_dim_embs.shape[0] >= len(labels), \"More labels than embeddings\"\n",
    "    plt.figure(figsize=(18, 18))  #in inches\n",
    "    for i, label in enumerate(labels):\n",
    "        x, y = low_dim_embs[i,:]\n",
    "        plt.scatter(x, y)\n",
    "        plt.annotate(label,\n",
    "                     xy=(x, y),\n",
    "                     xytext=(5, 2),\n",
    "                     textcoords='offset points',\n",
    "                     ha='right',\n",
    "                     va='bottom')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABB8AAAQSCAYAAADnplJ2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlclXX6//H3jQJSgmLSoo8EmhoRZQdFFBVRU1MrlwzT\nTCkNy5opW5xs1LTm27hkVloZmduQZb+aFnNS3HIXUNGMtPQcc0w7uWCyKMr9+4M4I66oHM4BXs/H\no0dwzn1/7uu+OwT3dV+f62OYpikAAAAAAABHcXN2AAAAAAAAoHoj+QAAAAAAAByK5AMAAAAAAHAo\nkg8AAAAAAMChSD4AAAAAAACHIvkAAAAAAAAciuQDAAAAAABwqApLPhiG4WEYxnuGYVgMw8g1DCPT\nMIyuf7znbxhGsWEYxw3D+P2Pf79QUccGAAAAAACuq3YFj7VPUrxpmj8bhnGXpI8Mw2jxx/umpHqm\naZoVeEwAAAAAAODiDEfmAgzD2CZpnKQsSXsluZumecZhBwQAAAAAAC7HYT0fDMO4SdKfJe344yVT\nksUwjH2GYbxvGMYNjjo2AAAAAABwHQ5JPhiGUVvSfEmzTdPcLek3STGS/CVFSfKWtMARxwYAAAAA\nAK6lwqddGIZhSEqTVFfS3ReaZvFHVcQvknxM0zxxznv0hAAAAAAAwEWZpmlc6T4V2XCyVKqkhpK6\nX6a/gynpggHTkxK4uHHjxmncuHHODgNwWfyMAJfGzwhwafyMAJdWUm9w5So0+WAYxtuSgiR1Mk3z\n1Fmvt5R0TNJuSQ0kvS5phWmav1fk8QEAAAAAgOupsOSDYRhNJA2TVCjp0B/ZEFPS8D/+/YokP0nH\nJS2VNKCijg0AAAAAAFxXhSUfTNPcp0s3sPywoo4F1GQdOnRwdgiAS+NnBLg0fkaAS+NnBHCMCm84\nea0MwzBdLSYAAAAAAFDS8+FqGk46ZKlNAAAAAACAUiQfAAAAAACAQ5F8AAAAAAAADkXyAQAAAAAA\nOBTJBwAAAAAA4FAkHwAAAAAAgEORfAAAAAAAAA5F8gEAAAAAADgUyQcAAAAAAOBQJB8AAAAAAIBD\nkXwAAAAAAAAORfIBAAAAAAA4FMkHAAAAAADgUCQfAAAAAACAQ5F8AAAAAAAADkXyAQAAAAAAOBTJ\nBwAAAAAA4FAkHwAAAAAAgEORfAAAAAAAAA5F8gEAAAAAADgUyQcAAAAAAOBQJB8AAAAAAIBDkXwA\nAAAAAAAORfIBAAAAAAA4FMkHAAAAAADgUCQfAAAAAACAQ5F8AAAAAAAADkXyAQAAAAAAOBTJBwAA\nAAAA4FAkHwAAAAAAgEORfAAAAAAAAA5F8gEAAAAAADgUyQcAAAAAAOBQJB8AAAAAAIBDkXwAAAAA\nAAAORfIBAAAAAAA4FMkHAAAAAADgUCQfAAAAAACAQ5F8AAAAAAAADkXyAQAAAAAAOBTJBwAAAAAA\n4FAkHwAAAAAAgEORfAAAAAAAAA5F8gEAAAAAADgUyQcAAAAAAOBQJB8AAAAAAIBDkXwAAAAAAAAO\nRfIBAAAAAAA4FMkHAAAAAADgUCQfAAAAAACAQ5F8AAAAAAAADkXyAQAAAAAAOBTJBwAAAAAA4FAk\nHwAAAAAAgEORfAAAAAAAAA5F8gEAAAAAADgUyQcAAAAAAOBQJB8AAAAAAIBDkXwAAAAAAAAORfIB\nAAAAAAA4FMkHAAAAAADgUCQfAAAAAACAQ5F8AAAAAAAADkXyAQAAAAAAOBTJBwAAAAAA4FAkHwAA\nAAAAgEORfAAAAAAAAA5F8gEAAAAAADgUyQcAAAAAAOBQJB8AAAAAAIBDkXwAAAAAAAAORfIBAIAL\neP3111VYWOjsMAAAAKoFwzRNZ8dQhmEYpqvFBACoeQIDA5WZmakGDRqUe5/i4mK5uZHXBwAA1Zdh\nGDJN07jS/fgLCQBQ4+Xn56tHjx6KiIhQaGioXnrpJR04cEAJCQlKTEyUJKWlpSk0NFShoaF6/vnn\n7ft6e3tr1KhRioiI0Msvv6zevXvb31u2bJn69OlT6ecDAADgamo7OwAAAJxtyZIlaty4sb788ktJ\n0vHjx/XBBx9o5cqV8vX11S+//KLnn39eW7ZsUf369dW5c2d9/vnn6tWrl/Ly8tS6dWtNnjxZkhQc\nHKzDhw/rhhtu0OzZszV06FBnnhoAAIBLoPIBAFDjhYSEaNmyZRo9erTWrFkjHx8fmaap0mmAmzdv\nVkJCgho0aCA3Nzc98MADWr16tSSpVq1aZaodBg0apPnz5ys3N1cbNmxQt27dnHJOAAAAroTKBwBA\njXfHHXcoMzNTixcv1osvvqiOHTvKMP43lfHsRMS5vLy8ymz70EMPqWfPnvL09FS/fv3oAQEAACAq\nHwAA0C+//CIvLy8NGDBAo0aNUlZWlry9vXX8+HFJUqtWrbR69WodOXJEZ86cUVpamjp06CBJ5yUl\nbrnlFjVq1Egvv/yyHnrooUo+EwAAANdE5QMAoMbbvn27nnnmGbm5ucnDw0MzZ87U+vXr1a1bNzVq\n1Ejp6el65ZVX7AmH7t27q0ePHpJUpuqh1AMPPKDffvtNQUFBlXkaAAAALoulNgEAqEA2m02PPfaY\n2rZtqyeeeMLZ4QAAAFSoq11qk8oHAAAqSFraQj3wwANyc/PSF18sk5/fTUpK6u/ssAAAAJyOygcA\nACqAzWaTv3+QCgpWSAqVlC0vrwRZrTny8/NzdngAAAAV4morH2g4CQBABbBYLPLwCFBJ4kGSQuXu\n7i+LxeK8oAAAAFwEyQcAACpAQECATp2ySMr+45VsFRVZFRAQ4LygAAAAXATJBwAAKoCfn59SU2fI\nyytBPj6R8vJKUGrqDKZcAAAAiJ4PAABUKJvNJovFooCAABIPAACg2rnang8kHwAAAAAAQLnQcBIA\nAAAAALgkkg8AAAAAAMChSD4AAAAAAACHIvkAAAAAAAAciuQDAAAAAABwKJIPAAAAAADAoUg+AABw\nlgkTJigoKEjt2rXTgAEDNHXqVGeHBAAAUOWRfAAA1DgLFixQq1atFBkZqZSUFJmmKUnKzMzUp59+\nquzsbC1evFgZGRlOjhQAAKB6IPkAAKhRcnJytHDhQq1bt05ZWVlyc3PTggULJElr1qzR3XffLQ8P\nD9WtW1c9e/Z0crQAAADVQ21nBwAAQGVKT09XVlaWYmJiZJqmCgsLddNNN0mSvQICAAAAFYvKBwBA\njWKapgYPHqysrCxt2bJF33//vf7+979Lktq2basvvvhCJ0+e1IkTJ/Tll186OVoAAIDqgeQDAKBG\nSUxM1KJFi2Sz2SRJR48e1b59+yRJ0dHR6tWrl8LCwnTXXXcpNDRU9erVc2a4AAAA1QLJBwBAjdKs\nWTNNnDhRXbp0UVhYmLp06aKDBw9Kkmw2mzp06KBvv/1WS5YskcViUVRUlJMjBgAAqPoMV5vfahiG\n6WoxAQCqv7S0hUpOHqHTp02dPn1cjRrdrCeeeELPPvuss0MDAABwGYZhyDRN40r3q7DKB8MwPAzD\neM8wDIthGLmGYWQahtH1rPcTDcP43jCME4ZhpBuG0aSijg0AQHnZbDZt3rzZPu2i9LXk5BEqKFih\noqIjMs0sHTlSoCFDhjgxUgAAgOqjIqdd1Ja0T1K8aZr1JP1d0keGYTQxDOMGSZ9IekFSA0mZkhZW\n4LEBAListLSF8vcPUufOj8rfP0hpaSW/iiwWizw8AiSF/rFlqNzd/WWxWJwUqevLzc3VzJkznR2G\ny7BarQoODtawYcPUokULde3aVSdPnnR2WAAAuAyHTrswDGObpHGSGkoabJpm2z9ev07Sb5LCTdPc\ndc4+TLsAAFQ4m80mf/8gFRSsUEmSIVteXgmyWnMk6aLv+fn5OTFq12WxWNSzZ09t377d2aG4BKvV\nqjvuuEOZmZkKCQlR//79dffdd2vAgAHODg0AgArl9GkX5zIM4yZJd0j6TlJzSdtK3zNNM1/ST3+8\nDgCAw12qusHPz0+pqTPk5ZUgH59IeXklKDV1BomHSxg9erT27NmjyMhIPffcc84OxyUEBgYqJCRE\nkhQVFUXlDAAAZ6ntiEENw6gtab6kD0zT3GUYRl1Jv56zWa4kb0ccHwCAcwUEBOjUKYukbJVWNxQV\nWRUQECBJSkrqr06dOspisSggIIDEw2X83//9n7777jtlZWU5OxSX4enpaf+6Vq1aKiwsdGI0AAC4\nlgpPPhiGYagk8XBS0sg/Xj4hyeecTX0k/X6hMcaNG2f/ukOHDurQoUNFhwkAqGFKqxuSkxPk7u6v\noiLredUNfn5+JB1w1Zg2CgCojlauXKmVK1de8ziOqHxIVUmPh+6maZ7547XvJA0u3cAwjOsl/emP\n189zdvIBAICKQnUDHKnk+QsAANXLuQUB48ePv6pxKrThpGEYb6uklrXTH30dSl9vKGm3pKGSFkt6\nSSWrYsRdYAwaTgIA4OKOHDmiqKgo7d2719mhAACASuT0hpOGYTSRNExSuKRDhmH8bhjGccMwkkzT\n/E1SH0mvSDoiKUbS/RV1bAAAULkaNGigNm3aKDQ0lIaTKllNZfPmzbLZbM4OBQAAl+TQpTavBpUP\nAAC4LpvNxrSVc6SlLVRy8gh5eJQ0NU1NnaGkpP7ODgsAAIdweuUDAACo3tLSFsrfP0idOz8qf/8g\npaUtdHZITmez2ZScPEIFBSuUm5upgoIVSk4eUWMqIFatWqWePXs6OwwAQBVA8gEAAFxWTb/JvhiL\nxSIPjwCVtLySpFC5u/vLYrE4L6hKRqNNAEB5kHwAAACXxU32hQUElEy1kLL/eCVbRUVWBQQEVFoM\nVqtVwcHBGjZsmFq0aKGuXbvq5MmTeu+999SyZUtFRESoX79+KiwslCQNGTJEI0aMUOvWrXX77bdr\n9erVSk5OVnBwsIYOHWofd+nSpYqLi1N0dLT69++v/PySXuJLlixRs2bNFB0drf/3//5fpZ0nAKBq\nI/kAAICTWK1WhYSEODuMcnGFm2xX5Ofnp9TUGfLySpCPT6S8vBKUmjqj0vth/Pjjjxo5cqR27Nih\nevXq6ZNPPlGfPn20adMmbdmyRUFBQUpNTbVvf+zYMa1fv15Tp05Vz5499fTTT2vnzp3Kzs5Wdna2\nDh8+rIkTJyo9PV0ZGRmKiorS1KlTdfLkSQ0bNkxfffWVMjIydPDgwUo9TwBA1VXb2QEAAFCTVZWS\n9dKb7OTkBLm7+6uoyOqUm2xXlJTUX506dXRqI87AwEB7IisqKkoWi0Xbt2/XmDFjdOzYMeXl5enO\nO++0b1/apyEkJEQ333yzgoODJUnNmzeXxWLRzz//rJ07d6pNmzYyTVNFRUVq3bq1cnJydNttt+m2\n226TJA0cOFCzZs2q5LMFAFRFJB8AAHABe/bsUd++fTVgwACtXbtWeXl5+vHHH/X000/r1KlTmjdv\nnurUqaPFixerfv36TonRFW6yXZWfn59Tr4enp6f961q1aqmgoEAPPfSQPv/8c7Vo0UJz5szRqlWr\nztvezc2tzL5ubm46ffq03Nzc1KVLFy1YsKDMcbZt2+bgMwEAVFdMuwAAwMl27dqlvn37as6cOfLz\n89N3332nzz77TJs2bdILL7ygunXrKisrS7GxsZo7d65TY/Xz81NMTAyJBxdzoWXKT5w4oZtvvllF\nRUXnJREut29sbKzWrl2rn376SZJUUFCg3bt3KygoSBaLRXv37pUkpaWlVdAZAACqO5IPAAA40a+/\n/qp77rlHCxYssJfNJyQk6LrrrlPDhg1Vv3599ejRQ1JJiXxNb/CICzt3+o5hGJowYYJatmyp+Ph4\nNWvW7JLbnvt1w4YN9cEHHygpKUlhYWFq3bq1fvjhB3l6euqdd95R9+7dFR0drZtuusmBZwUAqE6M\nC2W7nckwDNPVYgIAwBGsVqu6dOmigIAA9e3bV4888ojmzJmjzMxMTZ8+XVLJXP7MzEw1aNDgvPcA\nAAAqm2EYMk3ziptW0fMBAAAn8vT01GeffaYuXbqobt26zg4HuCybzUbfDwDAFWPaBQAATubl5aUv\nv/xS06ZN0/Hjx8u8V1VWw0DNkJa2UP7+Qerc+VH5+wcpLW2hs0MCAFQRTLsAAABV1tSpUzV79mwZ\n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\nXtPKlSvl6+vr7NOosZz5+wQAUHGofABqOEc+fXTW03e66cNVVdRn02q1auPGjZKktLQ0xcfHS5Ju\nuOEGnThxQosWLbrsGO3atdP8+fMlSTt27FB2dvZl9qjaSuebHjt2TH379lVISIj++te/aufOnZKk\n9PR0Pfroo/aETOkUFvN/PangRFRzAUDVR/IBQLVDN324qor6bAYFBemtt95ScHCwjh07ppSUFD38\n8MNq3ry5unXrppYtW9q3vdjKGCkpKTpx4oSaN2+ucePGKTo6+qrOqaoovQ4vvviiOnbsqO3bt+uL\nL76wV4iYplmlVxGBa9q2bZu+/vpr+/dffPGF/vnPf0qSxo8fr6lTpzorNACodEy7AFDtlM4RTk5O\nkLu7v4qKrFVqjnDbtm21Zs0aZ4cBB6iIz6a/v7/9af3ZJkyYoAkTJpz3+vLly+1f33DDDdqzZ48k\nqU6dOkpLS7uKs6iaSqsXcnNz1bhxY0nS7Nmz7e936dJFb7/9ttq3b69atWrp6NGj8vX1lY+Pjx57\n7DGNHTtWQUFBFx3/3//+t5o2bXrJbVDzbN26VRkZGerWrZskqWfPnurZs6eTowIA52C1CwDVFis+\nwFW5wmfTFWKoTLfddpsyMjK0a9cuDR48WHXr1tVdd92l+fPna8+ePTpz5oyeffZZLVmyRB4eHnrk\nkUc0YsQIvfnmm3rrrbfUqFEjpaenX3T8IUOGqEePHurTp08lnhUqm9VqVY8ePbR9+3ZJ0pQpU3Ti\nxAmtXLlSrVq10ooVK5Sbm6vU1FS1bNlSt99+uwoLC9W4cWONHj1a+fn5ysjI0BtvvKHx48fL29tb\nTz31lJPPCgCuDKtdAMA5quocYW9vb+Xn56tTp06Kjo5WWFiYPv/8c0klf/g2a9ZMAwcOVHBwsO67\n7z572fiECRPUqlUrhYaG6tFHH7WPl5CQoOeff16tWrVSUFCQ1q5dK6mku/+zzz6rVq1aKTw8XLNm\nzZIkHTx4UO3bt1dkZKRCQ0Pt2y9dulRxcXGKjo5W//79lZ+fX5mXpVpx9mezIlbcqGr27NmjBg0a\nKDY2Vt98843y8/O1Z88e1alTR/fdd5+KiorUvXt3eXp6qri4WOvWrdP69evVv39/3XzzzZo0aZKk\nkp/PMWPGKDw8XHFxcbLZbFq/fr0+//xzPfvss4qMjNTevXudfLZwpItNzzlz5ow2btyo1157TePG\n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\nUVRUFMXGxr5zGbq6uvT8+fPGrhoLC0sD0dPTY55NHo/XwrX5MImPjyc1NUsCiPl06CCk+Pj4WrfP\nzs6m+Ph4ys7Obuaavj0//XSEVFXVqUMHIamqqtNPPx2pc9vS0lIaPHgwmZiY0MiRI2nAgAEUFRVF\nPB6PlixZQmZmZuTq6krPnj0jIqLU1FTq27cvCQQCGjlyJL18+ZIpa9OmTcTlcikrK4tZl5qaSk5O\nTiQQCMjMzIz27t3bdA1/Ay9evCAiouLiYjIzM6Pnz58Th8Oh48ePExFReXk52dvbM20NCwsjPT09\natu2LQmFQrK1tSVnZ2caM2YMGRsb08SJE5myIyIiSCgUEp/PJx8fHyorKyMi2f/fxMREcnZ2JiKi\nnJwcGjhwIJmZmdH06dNJR0eHnj9/TiKRiHr37k0zZswgU1NTGjRoEJWUlDTbOWpMWupZycjIIH19\nffr8889p586dRCR5fxo6dGiNbX/66QgpKKhQ+/YmMs/K3bt3yczMjIiIzp07R8OGDWu+BtRCdnY2\nqaqqE5D6bz+VSqqq6k1ybkUiEdP2xqZ9+/ZERPTzzz+Th4cHVVZWUnZ2Nunq6tLTp08pKipK5lzP\nnz+fQkJCqLi4mHr06MH0LRMmTGjxa8JC9O+Y/d3H+vXZqSk/rPGBhaV2Vq9eTZs2bXrn/aoOcFhY\nWFqGESNGkLW1NZmZmdGPP/5IRLIDE9b4UH8aMsh5l5d66aBeTc3yjYP6lkYejCTyUIeqrFq1igQC\nAQkEAurYsSPFxcWRkpISicViIiK6cuUKdejQgYRCIVlYWBCfz6f+/fuTubk5EUkGsB07dqRHjx6R\nWCwmOzs7unDhApWUlFD37t3p9u3bREQ0efJk2rp1KxHJ/v8mJiaSi4sLEUkGVd9//z0REf3xxx/E\n5XIZ44OioiKlpaUREZGnpyeFhoY230lqINJrbmBgwDwrioptqHv37vTVV181a13eZEB43bM/bty4\ntzI6JSUlUf/+/cna2po8PDzoyZMndOfOHbK0tGS2uXXrFllZWTW4Pe9iVGwIIpGIuecbm6r/c199\n9RWZmZkRn8+nY8eOERHJGB+ys7PJ09OTtm3bRkREp06dImNjY7K2tqY5c+bIXAeWloE1PrCwtAKq\nW5Q3bdpEq1evJmdnZ1q6dCnZ2tqSkZERxcTEENF/1nqRSERdunShjz/+mIRCIcXExFBOTg6NHj2a\n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\nWCjitIsydzbkMkh1PqiolBrqPOLioTx0CJ4lKlIjqDDPPnPe+R9//CG+vr5iZ2cn9vb2Sidt0aJF\n4uvrqxzL3Nxcrl27JiIiK1eulHHjxkl8fHy+qvb5OR82bNggtra2MmfOHImOji62ay8MFemZliTP\nQicxJiZGNBqNHDlyREREhg0bJnPnzpUWLVrIzZs3RUTkyy+/lJo1a8rw4cOlZs2a4uDgIMnJyfLy\nyy+LpaWl6HQ6cXBwkCFDhsjff/8tdevWlf/85z8SGRkpGo1GNBqN3Lp1Sxo1aiRJSUmFsu/ChQvS\nsGFD+eijjxQnnYWFhfIuHTt2TNq2bSsiInq9Xi5fvqzs26BBA7l3754EBATIxIkTZenSpbJy5Upx\nd3eXq1evSvPmzZ/29hU7qnPv+aOk2m5qW0alMBTV+VDa0y5UVFTKEWqoXfGghoAWLxVlTm9hw14z\nQ9WnTJlC69atOXnyJNu3byc5ORkAMzMz6tevr9QjjUaDiYkJAAYGBqSmpgLZNQSyYmRkRHp6OoBy\nTID+/fuzfft2KleuzBtvvFEmWaQqyjMtScpaz6Q4adCgAc2bNwcyppz89ttvnD59mrZt26LX6/ny\nyy+Jj49nzJgxdO/enWrVqrFlyxZu3rzJ559/TmRkJE5OTuzbt4+6dety//59unTpQnBwMC4uLlSr\nVo0///xTmeZSGJo0aUJYWBj29vZMmTKFmTNnZnuXDA0N832XRASNRoOnpycHDx4kODgYHx8f6tSp\nw5YtW5RpNuWJ3NOaavDw4QN1vn4Zk5/Wyf79++nSpctTHbuk2m5qW0alNFCdDyoqzzHlbR6xikom\n5b0RVJSOZGZHJz4+nldffRWAVatWFeq8ZmZm1K5dO8+UehYWFhw/fhyAzZs3K/tcvnwZS0tLxowZ\nQ7du3YiKisp94FKgvD/Tkqas9UyKk5yaD6amptja2hIeHk5ERAS//vorTZo0UXQfGjZsyMWLF0lP\nT8fT0xOALl26cOfOHQCqVq1KaGgoBw4cYPLkyaSkpHDkyJEidfZzioxm6qDkhaenp6LnEBQURN26\ndalevTr169fn5s2bREdHY2FhkUtgtDyRuyN6FpEUdRChjHmc1snTCqCqbTeViozqfFBRec5RRyRV\nVApPUTqSmQ3OCRMm8NFHH+Hk5KREKjyufE5Wr17NBx98gIODAydOnGDq1KkAfPDBByxbtgwnJydu\n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\ne1PPBxERERc6fPgw77///iX3nT179ornunJpS3fj6+tLaGioEg8iIiK1jJIPIiIiwLvvvovFYiEk\nJIQxY8Zw5MgRIiMjCQ4OJioqim+//RaAmJgYJk+eTPfu3bn99ttZsWIFANOmTWPz5s1YrVbmzJnD\nO++8wz333EPfvn2JjIwE4KmnnqJDhw5YLBaWLl3qsrGKiIiIVLd6rg5ARETE1fbv389LL73E1q1b\nadq0KTk5OYwZM4axY8cyevRoEhMTeeyxx/joo48AOHr0KFu2bOHAgQMMHjyYYcOG8fLLLzNr1iw+\n+eQTAN555x12795NZmYmjRs3ZsWKFWRkZJCZmcmPP/5IaGgo4eHhrhx2tTp79ix169Z1dRgiIiLi\nIqp8EBGR69769esZPnw4TZs2BaBp06Zs27bN2b/hgQceYMuWLc7jhwwZAkDbtm358ccfL3vdqKgo\nGjduDMDmzZud12vRogW9e/cmLS2tSsZTGZYsWUKXLl2wWq1MmDCBkpISvL29efbZZwkODiYsLAyH\nwwHATz/9xPDhw+nSpQtdunRh27ZtAMTFxfHggw/So0cPHnzwQfLz8xkxYgTt27dn2LBhdO3alfT0\ndBYtWsSUKVOcz71w4UKefPJJl4xbREREqoaSDyIict0zTfOivgtXely/fv1y515Ow4YNL3ucOzdX\nzsrKIjk5ma1bt5Kenk6dOnVYsmQJp0+fJiwsjD179tCzZ08WLFgAwOTJk5kyZQo7duzgww8/JDY2\n1nmtAwcOsH79epYsWUJ8fDzNmzfnq6++YsaMGaSnpwNw33338cknnzh7YyQmJhITE1P9AxcREZEq\no+SDiIhc9/r27cvSpUs5fvw4AMePHycsLIykpCQAFi9eTI8ePS55blkSwdvbm9zc3Ms+R69evUhO\nTqakpASHw8EXX3xB586dy13DXaSkpJCenk5oaCghISGsX7+ew4cP4+npyV133QVAx44dsdlsAKxb\nt45JkyYREhLC4MGDOXXqFHl5eQAMHjwYT09PoLT647777gMgMDCQoKAgAG644Qb69u3LqlWrOHjw\nIMXFxQQGBlbzqEVERKQqqeeDiIhc99q1a8ef/vQnwsPDqVevHiEhIcydO5eYmBhmzpyJr68viYmJ\nwOUrIoKCgsuVuuIAABAPSURBVKhbty4hISGMHTvWOYWjzNChQ9m+fTsWi4U6derw2muv0aJFC+x2\n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\nIiIiItfIbrczcOBAMjMzXR2KiIhItapow0lNuxARERGpgPN7PPxaDoeDtLQ0HA5HpV1TRETEnSj5\nICIiInKN/Pz8yMjIqJRrJSUl4+cXQFTUePz8AkhKSq6U64qIiLgTTbsQERERcRGHw4GfXwD5+alA\nEJCBl1cEdnuWlqkUERG3pGkXIiIiIjWMzWbD09Of0sQDQBAeHn7YbDbXBSUiIlIFlHwQERERcRF/\nf38KC21A2RSODIqK7Pj7+7suKBERkSqg5IOIiIiIi/j6+pKQEI+XVwQ+Pla8vCJISIjXlAsREal1\n1PNBRERExMUcDgc2mw1/f38lHkRExK1VtOeDkg8iIiIiIiIiclXUcFJERERERERE3JKSDyIiIiIi\nIiJSpZR8EBEREREREZEqpeSDiIiIiIiIiFQpJR9EREREREREpEop+SAiIiIiIiIiVUrJBxERERER\nERGpUko+iIiIiIiIiEiVUvJBRERERERERKqUkg8iIiIiIiIiUqWUfBARERERERGRKqXkg4iIiIiI\niIhUKSUfRERERERERKRKKfkgIiIiIiIiIlVKyQcRERERERERqVJKPoiIiIiIiIhIlVLyQURERERE\nRESqlJIPIiIiIiIiIlKllHwQERERERERkSql5IOIiIiIiIiIVCklH0RERERERESkSin5ICIiIiIi\nIiJVSskHEREREREREalSSj6IiIiIiIiISJVS8kFEREREREREqpSSDyIiIiIiIiJSpZR8EBERERER\nEZEqpeSDiIiIiIiIiFQpJR9EREREREREpEop+SAiIiIiIiIiVUrJBxERERERERGpUko+iIiIiIiI\niEiVUvJBRERERERERKqUkg8iIiIiIiIiUqWUfBARERERERGRKqXkg4iIiIiIiIhUKSUfRERERERE\nRKRKKfkgIiIiIiIiIlVKyQcRERERERERqVJKPoiIiIiIiIhIlVLyQURERERERESqlJIPIiIiIiIi\nIlKllHwQERERERERkSql5IOIiIiIiIiIVCklH0RERERERESkSv3q5INhGJ6GYSw0DMNmGMYJwzB2\nGYYx4IJj+hqGccAwjFOGYaQYhtHq1z6viIiIiIiIiNQMlVH5UA84AvQ0TbMxMB1YWpZgMAyjObAc\n+BPQDNgFJFfC84pclzZs2ODqEETcmu4RkSvTPSJyZbpHRKrGr04+mKZ52jTNv5im+Z9zj1cDh4GO\n5w4ZBnxlmuYK0zQLgT8DFsMwfv9rn1vkeqRfiCJXpntE5Mp0j4hcme4RkapR6T0fDMNoCfwe+Orc\npkBgb9l+0zRPA9+c2y4iIiIiIiIitVylJh8Mw6gHLAYSTdPMPre5EXDigkNPAN6V+dwiIiIiIiIi\n4p4M0zSvfIBhpALhwKUO3GKaZq9zxxlAEqXJhntM0zx7bvvrQD3TNCedd80M4HnTND+6xPNdOSAR\nERERERERcRnTNI1rPafeVVw04iqvlQDcCNxVlng4Zx8wpuyBYRgNgdvObb/U813zIERERERERETE\nfVXKtAvDMN4CAoDB55pKnu8jINAwjKGGYdSndDWMvaZp/rsynltERERERERE3NsvTrv4xQuULqlp\nAwqAsooHE3jENM2kc8f0Ad4EWgE7gLGmaR75VU8sIiIiIiIiIjXCr04+iIiIiIiIiIhcSaUvtVkR\nhmF4Goax0DAMm2EYJwzD2GUYxoALjulrGMYBwzBOGYaRcq7iQuS6YRjGo4ZhpBmGUWAYxqJL7Nc9\nItc1wzCaGobx0bl74LBhGNGujknEla70e0O/M+R690ufP3SPiIBhGO8ZhvHduXskyzCM2PP2XfM9\n4hbJB0obXx4Bepqm2ZjSvhBLywZgGEZzYDnwJ6AZsAtIdlGsIq7yX2AGpc1dy9E9IgJAPKVTAH2B\n0cA8wzDaujYkEZe65O8N/c4QAa7w+UP3iIjTi4DfuXtkMPBXwzBCKnqPuO20C8Mw9gJ/Nk3zI8Mw\nHgLGmKbZ49y+G4CfgGA1rpTrjWEYM4BbTNP8w3nbdI/Ide3cez4HaGea5jfntr0LfGua5v+5NDgR\nF7vw94Z+Z4hcWtnnD0pX8NM9InIewzDaAKnA40BTKnCPuEvlQzmGYbQEfg98dW5TILC3bL9pmqeB\nb85tFxHdIyK/B4rLEg/n7EX3gMil6HeGyAXOff64A9iH7hERJ8Mw3jQMIw84AHwHfEYF7xG3Sz4Y\nhlEPWAwkmqaZfW5zI+DEBYeeALyrMzYRN6Z7RK53ugdErp7uF5HznPf54+1z39rqHhE5xzTNRym9\nJ3oAK4BCKniPVEvywTCMVMMwSgzDOHuJ/zadd5xB6Y1/BnjsvEucAnwuuKwPkFvlwYtUg6u9R65A\n94j8//buWDWqIAoD8H+ygYipBC21MI0gqL0gKIidoI2WduITWAbzBhaCjWksbER9AVvB0sLGSn0M\nQY7F3eAim2gCm6y53we32Jlb3ObnMIedmbGTAfh38gJTu6w/ZARm9OBDkrNJHuWAGTmU5kN3X+/u\nle6ezHmuzbz6IsMeq7vd/XNm/HOSKzs/qmo9ycZ0HP57+8jIbmSEsfuSZLWqNmbGLkcGYB41A36b\nt/6QEZhvNcn5DMcj7DsjS7PtoqqeJ7mQ5HZ3//hj+m2Si1V1p6rWMpxG+8mBL4xJVU2q6kSSSYZF\n1lpVTabTMsKoTfcavkmyVVUnq+pqhlOZXx7tl8HR2aNuqBmQPdcfMsLoVdWZqrpXVetVtVJVt5Lc\nT/I+ybscICNLcdvF9ErNrxmuSNvpOHaSh939avrOjSTPkpxL8jHJg+7+fvhfC0ejqjaTbGbIxo4n\n3b01nZcRRq2qTiXZTnIzw4nLj7vb1WiM1l51Q81g7P62/pARxq6qTid5neRShj8tfEvytLu3p/P7\nzshSNB8AAACA42tptl0AAAAAx5PmAwAAALBQmg8AAADAQmk+AAAAAAul+QAAAAAslOYDAAAAsFCa\nDwAAAMBCaT4AAAAAC6X5AAAAACzUL+agI05/oW4pAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f32f5692048>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from sklearn.manifold import TSNE\n",
    "\n",
    "tsne = TSNE(perplexity=30, n_components=2, init='pca', n_iter=5000)\n",
    "plot_only = 500\n",
    "low_dim_embs = tsne.fit_transform(final_embeddings[:plot_only,:])\n",
    "labels = [vocabulary[i] for i in range(plot_only)]\n",
    "plot_with_labels(low_dim_embs, labels)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Machine Translation"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "The `basic_rnn_seq2seq()` function creates a simple Encoder/Decoder model: it first runs an RNN to encode `encoder_inputs` into a state vector, then runs a decoder initialized with the last encoder state on `decoder_inputs`. Encoder and decoder use the same RNN cell type but they don't share parameters."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 112,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "import tensorflow as tf\n",
    "reset_graph()\n",
    "\n",
    "n_steps = 50\n",
    "n_neurons = 200\n",
    "n_layers = 3\n",
    "num_encoder_symbols = 20000\n",
    "num_decoder_symbols = 20000\n",
    "embedding_size = 150\n",
    "learning_rate = 0.01\n",
    "\n",
    "X = tf.placeholder(tf.int32, [None, n_steps]) # English sentences\n",
    "Y = tf.placeholder(tf.int32, [None, n_steps]) # French translations\n",
    "W = tf.placeholder(tf.float32, [None, n_steps - 1, 1])\n",
    "Y_input = Y[:, :-1]\n",
    "Y_target = Y[:, 1:]\n",
    "\n",
    "encoder_inputs = tf.unstack(tf.transpose(X)) # list of 1D tensors\n",
    "decoder_inputs = tf.unstack(tf.transpose(Y_input)) # list of 1D tensors\n",
    "\n",
    "lstm_cells = [tf.contrib.rnn.BasicLSTMCell(num_units=n_neurons)\n",
    "              for layer in range(n_layers)]\n",
    "cell = tf.contrib.rnn.MultiRNNCell(lstm_cells)\n",
    "\n",
    "output_seqs, states = tf.contrib.legacy_seq2seq.embedding_rnn_seq2seq(\n",
    "    encoder_inputs,\n",
    "    decoder_inputs,\n",
    "    cell,\n",
    "    num_encoder_symbols,\n",
    "    num_decoder_symbols,\n",
    "    embedding_size)\n",
    "\n",
    "logits = tf.transpose(tf.unstack(output_seqs), perm=[1, 0, 2])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 113,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "logits_flat = tf.reshape(logits, [-1, num_decoder_symbols])\n",
    "Y_target_flat = tf.reshape(Y_target, [-1])\n",
    "W_flat = tf.reshape(W, [-1])\n",
    "xentropy = W_flat * tf.nn.sparse_softmax_cross_entropy_with_logits(labels=Y_target_flat, logits=logits_flat)\n",
    "loss = tf.reduce_mean(xentropy)\n",
    "optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)\n",
    "training_op = optimizer.minimize(loss)\n",
    "\n",
    "init = tf.global_variables_initializer()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Exercise solutions"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "**Coming soon**"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.3"
  },
  "nav_menu": {},
  "toc": {
   "navigate_menu": true,
   "number_sections": true,
   "sideBar": true,
   "threshold": 6,
   "toc_cell": false,
   "toc_section_display": "block",
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
